تقييم الموضوع :
  • 3 أصوات - بمعدل 3.67
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] معرفة حجم ملف
#1
Information 
السلام عليكم
انا اعرف الخاصية Length التي تاتي بحجم الملف لاكن اريد دالة او خاصية تعود بحجم الملف بهذا الشكل

http://content.screencast.com/users/ali....-06.07.png
الرد }}}
تم الشكر بواسطة:
#2
(27-12-13, 08:10 AM)ali.alfoly كتب : السلام عليكم
انا اعرف الخاصية Length التي تاتي بحجم الملف لاكن اريد دالة او خاصية تعود بحجم الملف بهذا الشكل

http://content.screencast.com/users/ali....-06.07.png

هذي بسيطة

بمجرد عمليات حسابية تستطيع تحويل البايت الى الكيلو بايت

وذلك عبر قسمة الحجم (بالبايت) على 1000 ، لتحصل على الناتج ب(كيلو بايت)

PHP كود :
Dim KBLength As Long = New IO.FileInfo("filePath").Length 1000 

واذا تبي الحجم بالميغا بايت تقسم على 1000000 (مليون) Cool

واذا تبي الحجم بالغيغا بايت تقسم على 1000000000 (مليار) Cool

واذا تبي .... انت كمل Big Grin


--

يعني تقدر تقول ان الكود بيصير بهذه الطريقة

PHP كود :
Dim fi As IO.FileInfo = new IO.FileInfo("filePath")

Dim ByteLenght As Long fi.Length
Dim KBLenght 
As Long fi.Length 1000

Label1
.Text String.Format("Size : {0} KB ({1} Bytes)"KBLenghtByteLenght
الرد }}}
تم الشكر بواسطة: ali.alfoly , sayyad
#3
القسمة علي 1000 Confused
فين راحت الـ 24 Undecided
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة: ali.alfoly
#4
(27-12-13, 03:18 PM)kslawy كتب : القسمة علي 1000 Confused
فين راحت الـ 24 Undecided

فعلا Big Grin

من جدي لما تسأل اي شخص يقولك ال1 gb

يساوي 1000 mb وينسى ال24 Big Grin
الرد }}}
تم الشكر بواسطة: ali.alfoly
#5
السلام عليكم...

ربما يمكنك استعمال 1000 أو 1024:

من ويكيبيديا:

إقتباس :مضاعفات البايت

لاحظ أن الأسماء كيلوبايت وميجابايت ...الخ، يمكن أن يكون معناها إما علميا (مضاعفات بأساس عشري) أو ثنائيا (مضاعفات بأساس ثنائي).

علميا

1 كيلوبايت KB يساوي 10^3 يساوي 1,000 بايت.
1 ميجابايت MB يساوي 10^6 يساوي 1,000,000 بايت.
1 جيجابايت GB يساوي 10^9 يساوي 1,000,000,000 بايت.
1 تيرابايت TB يساوي 10^12 يساوي 1,000,000,000,000 بايت.
1 بيتابايت PB يساوي 10^15 يساوي 1,000,000,000,000,000 بايت.
1 إكسابايت EB يساوي 10^18 يساوي 1,000,000,000,000,000,000 بايت.
1 زيتابايت ZB يساوي 10^21 يساوي 1,000,000,000,000,000,000,000 بايت.

ثنائيا

1 كيلوبايت KB أو KiB يساوي 2^10 يساوي 1,024 بايت.
1 ميجابايت MB أو MiB يساوي 2^20 يساوي 1,048,576 بايت.
1 جيجابايت GB أو GiB يساوي 2^30 يساوي 1,073,741,824 بايت.
1 تيرابايت TB أو TiB يساوي 2^40 يساوي 1,099,511,627,776 بايت.
1 بيتابايت PB أو PiB يساوي 2^50 يساوي 1,125,899,906,842,624 بايت.
1 إكسابايت EB أو EiB يساوي 2^60 يساوي 1,152,921,504,606,846,976 بايت.

وبتمديد النمط، نستطيع الحصول على وحدتين إضافيتين غير رسميتين. الوحدتين كبيرتين جداً لاستخدامها في الحياة الواقعية في المستقبل القريب.

1 زيتابايت ZB أو ZiB يساوي 2^70 يساوي 1,180,591,620,717,411,303,424 بايت.
1 يوتابايت YB أو YiB يساوي 2^80 يساوي 1,208,925,819,614,629,174,706,176 بايت.

لاحظ أن الفرق بين الوحدات بقيمها العلمية والثنائية يزيد كلما كانت الوحدة أكبر.

و السلام عليكم.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
الرد }}}
تم الشكر بواسطة: الشاكي لله , kslawy , ali.alfoly
#6
السلام عليكم ورحمة الله

جزاكم الله خيرا اخواني

وجعله الله تعالي في موازين حسناتكم

ارجو من احد الاخوة اتمام الدالة لاني حاولت وفشلت وهذه الايام عملت تعديلات في محلي ومشغول جدا فارجو من حدراتكم اتمام هذه الدالة

المقصود تمرير الرقم تعود بالنص مثل الصورة



كود :
Public Class Form1

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        MsgBox(Get_Size(1080))
    End Sub

    Public Function Get_Size(ByVal Length As Long) As String
        Dim Txt_Siz As String = ""
        If Length < 1024 Then
            Txt_Siz = Length & " Bytes"
        ElseIf Length < 1048576 Then
            Txt_Siz = (Length / 1024) & " KB"
        ElseIf Length < 1073741824 Then
            Txt_Siz = (Length / 1024 / 1024) & " MB"
        End If
        Return Txt_Siz
    End Function

End Class
الرد }}}
تم الشكر بواسطة:
#7
(29-12-13, 03:59 AM)ali.alfoly كتب : السلام عليكم ورحمة الله

جزاكم الله خيرا اخواني

وجعله الله تعالي في موازين حسناتكم

ارجو من احد الاخوة اتمام الدالة لاني حاولت وفشلت وهذه الايام عملت تعديلات في محلي ومشغول جدا فارجو من حدراتكم اتمام هذه الدالة

المقصود تمرير الرقم تعود بالنص مثل الصورة



كود :
Public Class Form1

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        MsgBox(Get_Size(1080))
    End Sub

    Public Function Get_Size(ByVal Length As Long) As String
        Dim Txt_Siz As String = ""
        If Length < 1024 Then
            Txt_Siz = Length & " Bytes"
        ElseIf Length < 1048576 Then
            Txt_Siz = (Length / 1024) & " KB"
        ElseIf Length < 1073741824 Then
            Txt_Siz = (Length / 1024 / 1024) & " MB"
        End If
        Return Txt_Siz
    End Function

End Class

والكود الي وضعته لك في مشاركتي السابقة ؟
الرد }}}
تم الشكر بواسطة:
#8
Shocked 
(29-12-13, 03:59 AM)ali.alfoly كتب : السلام عليكم ورحمة الله

جزاكم الله خيرا اخواني

وجعله الله تعالي في موازين حسناتكم

ارجو من احد الاخوة اتمام الدالة لاني حاولت وفشلت وهذه الايام عملت تعديلات في محلي ومشغول جدا فارجو من حدراتكم اتمام هذه الدالة

المقصود تمرير الرقم تعود بالنص مثل الصورة


عليكم السلام اهلا بك استاذي علي ، حاولت انا كذلك ولم اجد نتيجة ولكن لعل الاخوان لديهم افادة بهذا الشيء لأنني اصبحت مثلك اريد المحصلة النهائية ..
حاولت انا بطريقة أخرى وإليك الكود والصورة :
PHP كود :
open.Filter "AllFiles |*.*"

        
If open.ShowDialog() = Windows.Forms.DialogResult.OK Then
            Dim FilesInfo 
As FileInfo = New FileInfo(open.FileName)

            
TextBox1.Text = (open.FileName)

            
Label2.Text String.Format("Size : " Math.Round(FilesInfo.Length 10241) & "  KB  " & (Math.Round(FilesInfo.Length1) & "   Bytes  "))
        
End If 
   
قد تكون محاولة فاشلة ولكن اعتقد ان النتيجة طيبة .

تحياتي / محمد .
قــراءة حــجــازية
سبحان الله وبحمده ، سبحان الله العظيم
فيس بوك
الرد }}}
تم الشكر بواسطة:
#9
(29-12-13, 01:08 PM)البروف سيمونس كتب :
(29-12-13, 03:59 AM)ali.alfoly كتب : السلام عليكم ورحمة الله

جزاكم الله خيرا اخواني

وجعله الله تعالي في موازين حسناتكم

ارجو من احد الاخوة اتمام الدالة لاني حاولت وفشلت وهذه الايام عملت تعديلات في محلي ومشغول جدا فارجو من حدراتكم اتمام هذه الدالة

المقصود تمرير الرقم تعود بالنص مثل الصورة


عليكم السلام اهلا بك استاذي علي ، حاولت انا كذلك ولم اجد نتيجة ولكن لعل الاخوان لديهم افادة بهذا الشيء لأنني اصبحت مثلك اريد المحصلة النهائية ..
حاولت انا بطريقة أخرى وإليك الكود والصورة :
PHP كود :
open.Filter "AllFiles |*.*"

        
If open.ShowDialog() = Windows.Forms.DialogResult.OK Then
            Dim FilesInfo 
As FileInfo = New FileInfo(open.FileName)

            
TextBox1.Text = (open.FileName)

            
Label2.Text String.Format("Size : " Math.Round(FilesInfo.Length 10241) & "  KB  " & (Math.Round(FilesInfo.Length1) & "   Bytes  "))
        
End If 

قد تكون محاولة فاشلة ولكن اعتقد ان النتيجة طيبة .

تحياتي / محمد .

طيب انا لاارى مشكلة عندك

وين الخلل ؟
الرد }}}
تم الشكر بواسطة: البروف سيمونس , ali.alfoly
#10
السلام عليكم ورحمة الله وبركاته

واجهتني المشكلة في تقسم حجم الملف الأصلي (غير المقسوم) لا ينقسم أبدا لهذه الطريقة ("00.000") دائما يظهر كامل ولكنني قسمته باستخدام العلامة (",") بدلاً عن (النقطة) وعند الرجوع بالدالة يتم استبدال (,) بالنقطة
PHP كود :
Private Function GetFileLenght(ByVal filePath As String) As String
        Dim FileLen 
As String ""
        
Try
            
Dim fi As IO.FileInfo = New IO.FileInfo(filePath)

            
Dim ByteLenght As Long fi.Length
            Dim KBLenght 
As Long fi.Length 1024

            FileLen 
String.Format("Size : {0:00.0} KB ({1:00,000} Bytes)"KBLenghtByteLenght)
            Return 
FileLen.Replace(",""."' لم يتقسم النص الأخير إلا بوضع العلامة التي ستستبدل هنا
        Catch ex As Exception
            MsgBox(ex.Message, 48, "Get File Lenght")
            Return ""
        End Try
    End Function 


http://msdn.microsoft.com/en-us/library/....110).aspx

****
***
**
*
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة: الشاكي لله , alims , ali.alfoly


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  معرفة رصيدي للهاتف النقال المتصل بالكمبيوتر وارسال رسائل نصية منه AHMED213 0 98 22-02-24, 11:47 AM
آخر رد: AHMED213
  [VB.NET] معرفة بيانات الجهاز محمد بوقزاحة 1 309 21-02-24, 11:44 PM
آخر رد: AHMED213
  معرفة عدد مرات تكرار الاسم في الداتاقريدفيو صالح عبدالله 8 426 05-02-24, 04:39 PM
آخر رد: صالح عبدالله
  [VB.NET] معرفة بيانات الجهاز محمد بوقزاحة 7 676 12-01-24, 07:31 PM
آخر رد: Kamil
  معرفة عدد الاشهر خلال فترة زمنيةمعينة boofa2022 0 170 01-01-24, 01:18 PM
آخر رد: boofa2022
  بعد تنصيب فيجوال بيسك 2005 اللغة العربية غير معرفة bassant 0 363 05-07-23, 02:02 PM
آخر رد: bassant
  [سؤال] كود معرفة العدد المطلوب للصفحات(هل هو صحيح؟ ام يحتاج تعديل؟) سعود 6 832 02-05-23, 09:21 PM
آخر رد: Taha Okla
  [VB.NET] معرفة الخطأ MOHAMMED ALZWI 1 397 06-03-23, 01:33 PM
آخر رد: boudyonline
  [VB.NET] معرفة الخطأ MOHAMMED ALZWI 1 408 20-01-23, 03:59 PM
آخر رد: Taha Okla
  [VB.NET] معرفة الخطأ MOHAMMED ALZWI 1 254 15-12-22, 12:31 AM
آخر رد: أبو خالد الشكري

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم