اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر (معدل)

السلام عليكم ورحمة الله وبركاته..

كنت اعمل على مشروع للقرآن الكريم، يكون ضمن تطبيق قوت القلوب، صورته في التوقيع 🥰 البرنامج من تصميمي وبرمجتي 100%

 

image.png.7ec2cc8def9695c53e5299d7b84fa31b.png

 

فاحتجت للقرآن الكريم مرتل ومقسم لايات قمت بالعثور على ختمات كاملة وللعديد من القرآء في موقع Archive.org

فقمت بتحويل الروابط الى قاعدة بيانات SQLite تتضمن ترتيل القرآن الكريم على شكل ايات كل آية على حدا وبرابط مباشر، أي ستقوم بتشغيل الصوت من الرابط مباشرة بدون تنزيلة

طبعا يمكنكم تشغيل الصوت مباشرة من الويب باستخدام الكثير من المكتبات المجانية مثل NAudio.dll وغيرها...

 

قبل كل شيء، هذا الكود لإنشاء الجدول sounds الذي ستكون فيه روابط الصوت لايات القرآن الكريم في قاعدة البيانات..

1. تسلسل السورة

2. رقم الآية

3. رابط الملف الصوتي للآية

4. معرف القارئ

CREATE TABLE "sounds" (
	"surah_number"	INTEGER,
	"ayah_number"	INTEGER,
	"audio_url"	TEXT,
	"reader_id"	INTEGER
);

 

0. احمد نعينع
1. الطبلاوي
2. عبد الباسط
3. المنشاوي
4. الحصري

 

السورس كود للفائدة، الذي يقوم بتوليد الايات حسب السور بلغة NET.

 

    Sub GenerateQuranAudioLinks(ByVal baseUrl As String, ByVal reader_id As String)
        ' عدد الآيات لكل سورة من القرآن الكريم
        Dim surahAyatCounts As Integer() = {
            7, 286, 200, 176, 120, 165, 206, 75, 129, 109,
            123, 111, 43, 52, 99, 128, 111, 110, 98, 135,
            112, 78, 118, 64, 77, 227, 93, 88, 69, 60,
            34, 30, 73, 54, 45, 83, 182, 88, 75, 85,
            54, 53, 89, 59, 37, 35, 38, 29, 18, 45,
            60, 49, 62, 55, 78, 96, 29, 22, 24, 13,
            14, 11, 11, 18, 12, 12, 30, 52, 52, 44,
            28, 28, 20, 56, 40, 31, 50, 40, 46, 42,
            29, 19, 36, 25, 22, 17, 19, 26, 30, 20,
            15, 21, 11, 8, 8, 19, 5, 8, 8, 11,
            11, 8, 3, 9, 5, 4, 7, 3, 6, 3, 5, 4, 5, 6
        }

        ' حلقة لتوليد جمل SQL لكل سورة وآياتها
        For surah As Integer = 1 To 114
            Dim surahNumber As String = surah.ToString("D3") ' تحويل رقم السورة إلى 3 أرقام
            Dim ayatCount As Integer = surahAyatCounts(surah - 1)

            ' توليد جمل SQL بناءً على عدد الآيات لكل سورة
            For ayah As Integer = 0 To ayatCount
                Dim ayahNumber As String = ayah.ToString("D3") ' تحويل رقم الآية إلى 3 أرقام
                Dim fileUrl As String = baseUrl & surahNumber & ".zip" & "/" & surahNumber & ayahNumber & ".mp3"
                Dim sqlInsert As String = "INSERT INTO sounds (surah_number, ayah_number, audio_url, reader_id) VALUES (" & surah & "," & ayah & "," & "'" & fileUrl & "'" & "," & reader_id & ");"
                My.Computer.FileSystem.WriteAllText(Application.StartupPath & "\sql_" & reader_id & ".txt", sqlInsert & vbNewLine, True)
            Next
        Next

        '' تشغيل كل عملية في ثريد منفصل باستخدام Task
        'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/128kb---a7mad--n3ena3---morattal------quran----6236---ayaat-----__verse--by---_189/", "1")) 'احمد نعينع
        'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/64kb__---mp3------------quran----6236---ayaat-----__verse--by---verse----_-by-/", "2")) 'الطبلاوي
        'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/192kb----morattal----quran----6236---ayaat-----__verse--by---verse----_-by--ab_525/", "3")) 'عبد الباسط
        'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/128kb____--mp3-------full-----quran----6236---ayaat-----__verse--by---verse---/", "4"))  'المنشاوي
        'Task.Run(Sub() GenerateQuranAudioLinks("https://archive.org/download/64kb___--mp3-----quran----6236---ayaat-----__verse--by---verse----_-by---alhos/", "5"))  'الحصري

    End Sub

 

ارفقت لكم البيانات على شكل ملفات TXT لكي تعدلو عليها كيفما شئتم.

لا تنسوني ووالدي من صالح دعائكم

 

SQLite.zip

تم تعديل بواسطه SEMO.Pa3x
  • Like 5
  • Thanks 3
قام بنشر

رحم الله والديك ، وجعل لهم من الجنات نصيبا ..

عمل جميل أستاذنا @SEMO.Pa3x :wub:

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information