يعد تحديد حجم الملف مهمة مهمة عند العمل مع نظام الملفات في جافا. قد تكون معرفة حجم الملف ضرورية لأغراض عديدة ، على سبيل المثال ، لحساب معدل نقل البيانات أو لإدارة الذاكرة.
هناك عدة طرق لمعرفة حجم الملف في جافا. واحدة من أبسط الطرق وأكثرها شيوعا هي استخدام طريقة الطول() لفئة الملف. ترجع هذه الطريقة حجم الملف بالبايت. على سبيل المثال ، لمعرفة حجم الملف " ملفي.النص " ، يكفي إنشاء كائن من فئة الملف مع المسار إلى هذا الملف ، ثم استدعاء طريقة الطول ():
ملف ملف = ملف جديد ("ملفي.النص");
حجم الملف الطويل = ملف.طول();
ومع ذلك ، ضع في اعتبارك أن طريقة الطول() ترجع قيمة غير صحيحة لبعض أنواع الملفات ، على سبيل المثال ، للملفات الموجودة على الخوادم البعيدة أو للملفات الموجودة في نظام ملفات فات 32. لذلك ، عند العمل مع هذه الملفات ، قد تحتاج إلى استخدام طرق أخرى لتحديد حجمها.
- كيفية تحديد حجم الملف في جافا?
- الأساليب والأساليب
- 1. باستخدام فئة الملف
- 2. باستخدام فئة المسار
- 3. باستخدام فئة راندواكسيسفيل
- الطريقة 1: استخدام فئة الملف
- الطريقة 2: استخدام فئة فيلينبوتستريم
- الطريقة 3: استخدام فئة القناة
- الطريقة 4: استخدام فئة أورلكونكتيون
- سؤال وجواب
- كيف يمكنني معرفة حجم الملف في جافا?
- هل هناك طريقة لمعرفة حجم الملف دون فتحه?
- كيف يمكنني معرفة حجم الملف بالكيلو بايت?
- كيف يمكنني معرفة حجم الملف في ميغابايت?
- كيف يمكنني معرفة حجم الملفات في دليل معين?
- هل من الممكن معرفة حجم الملف في جافا باستخدام مسارات الملفات على الإنترنت?
كيفية تحديد حجم الملف في جافا?
هناك عدة طرق لتحديد حجم الملف في جافا. دعونا ننظر إلى بعض منهم:
المسار
من عند
1 حزمة. باستخدام فئة الملف
باستخدام الفصل
ملف
حجم طويل = ملف.طول();
2. باستخدام فئة المسار
باستخدام الفصل
المسار
حجم طويل = الملفات.الحجم (المسار);
الطريقة
3. باستخدام فئة راندواكسيسفيل
فئة
ملف الوصول العشوائي
يوفر القدرة على قراءة وكتابة البيانات في ملف. يمكنك أيضا استخدامه للحصول على حجم الملف:
ملف.إغلاق();
طريقة الطول ()
إرجاع حجم الملف بالبايت.
يعتمد اختيار طريقة معينة على المهمة المحددة وسياق الاستخدام. من المهم أن تأخذ في الاعتبار تفاصيل كل طريقة واختيار الأنسب لحالتك.
- الطريقة 1: استخدام فئة الملف
طريقة واحدة لمعرفة حجم الملف في جافا هو استخدام فئة الملف من الحزمة java.io . تمثل فئة الملف ملفا أو دليلا في نظام الملفات.
- للحصول على حجم الملف باستخدام فئة الملف ، اتبع الخطوات التالية:
قم بإنشاء مثيل لفئة الملف عن طريق تحديد المسار إلى الملف في المنشئ. على سبيل المثال ، للملف "مثال.النص " يمكن استخدام الكود التالي في الدليل الحالي:
ملف ملف = ملف جديد ("مثال.النص");
تحقق مما إذا كان الملف موجودا:
- إذا (ملف.موجود ()) {
// رمز للحصول على حجم الملف
}
إذا كان الملف موجودا ، احصل على حجمه باستخدام طريقة الطول() :
حجم الملف الطويل = ملف.طول();
ترجع طريقة الطول () حجم الملف بالبايت. بالنسبة للملفات الكبيرة ، يجب استخدام نوع البيانات الطويل لتخزين حجم الملف ، حيث قد تتجاوز قيمة الإرجاع القيمة القصوى لنوع كثافة العمليات.
قد يبدو مثال التعليمات البرمجية الكامل للحصول على حجم الملف باستخدام فئة الملف كما يلي:
استيراد ملف جافا;
ملف الفئة العامةمثال {
العامة ثابت الفراغ الرئيسي (سلسلة[] الحجج) {
ملف ملف = ملف جديد ("مثال.النص");
إذا (ملف.موجود ()) {
حجم الملف الطويل = ملف.طول();
النظام.خارج.برينتلن ("حجم الملف:" + حجم الملف + "بايت");
} آخر {
النظام.خارج.برينتلن ("الملف غير موجود");
}
}
}
يتحقق هذا الرمز من وجود الملف " مثال.النص " ، وإذا كان الأمر كذلك ، إخراج حجمها إلى وحدة التحكم. في حالة عدم وجود الملف ، يتم عرض الرسالة "الملف غير موجود".
لاحظ أن الحصول على حجم الملف باستخدام فئة الملف لا يتطلب فتح الملف وقراءته. هذا يجعل هذه الطريقة أكثر كفاءة للحصول على حجم الملف.
الطريقة 2: استخدام فئة فيلينبوتستريم
هناك طريقة أخرى لمعرفة حجم الملف في جافا وهي استخدام فئة فيلينبوتستريم. Этот класс предоставляет возможность читать данные из файла в виде последовательности байтов.
Пример использования:
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class FileSizeExample {
public static void main(String[] args) {
File file = new File("file.txt");
long fileSize = getFileSize(file);
System.out.println("Размер файла: " + fileSize + " байт");
}
private static long getFileSize(File file) {
FileInputStream inputStream = null;
try {
inputStream = new FileInputStream(file);
return inputStream.available();
} catch (IOException e) {
e.printStackTrace();
return -1;
} finally {
if (inputStream != null) {
try {
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
В этом примере мы создаем объект класса File с указанием пути к файлу. ثم نقوم بتمرير هذا الكائن إلى طريقة جيتفيلسيزي ، الذي يفتح الملف باستخدام فئة فيلينبوتستريم وإرجاع حجم الملف باستخدام الطريقة المتاحة.
لا تنس التعامل مع استثناء إوكسيبتيون الذي قد يحدث عند فتح الملف. في الكتلة النهائية ، نغلق تيار الإدخال باستخدام طريقة الإغلاق.
تقوم هذه الطريقة أيضا بإرجاع حجم الملف بالبايت. في حالة حدوث خطأ عند فتح الملف ، تقوم الطريقة بإرجاع القيمة -1.
- للحصول على حجم الملف باستخدام فئة القناة ، اتبع الخطوات التالية:
- ، يمكنك فتح قناة قراءة الملف.
- . ترجع هذه الطريقة حجم الملف بالبايت.
أغلق قناة القراءة. بعد الحصول على حجم الملف ، لا تنس إغلاق قناة القراءة باستخدام الطريقة
إغلاق()
. هذه خطوة إلزامية تحرر الموارد التي تشغلها قناة القراءة.
Вот пример кода, демонстрирующего использование класса قناة для определения размера файла:
استيراد ملف جافا;
استيراد جافا;
استيراد جافا.نيو.القنوات.فيلشانيل;
استيراد جافا.نيو.ملف.المسار;
استيراد جافا.نيو.ملف.ستانداردوبنوبتيون;
ملف الفئة العامةمثال {
العامة ثابت الفراغ الرئيسي (سلسلة[] الحجج) {
ملف ملف = ملف جديد ("مسار / إلى / ملف.النص");
جرب (قناة الملفات = قناة الملفات . فتح (ملف.توباث () ، ستانداردوبينوبتيون.اقرأ)) {
حجم طويل = قناة.الحجم();
النظام.خارج.برينتلن ("Размер файла: "+الحجم + "بايت");
} الصيد (إيوكسيبتيون ه) {
ه. برينتستاكتريس();
طريقة الحجم ()
جافا.نيو.القنوات
و
جافا.نيو.حزم الملفات
.
باستخدام فئة القناة يجعلها بسيطة جدا وفعالة للحصول على حجم الملف في جافا. ومع ذلك ، إذا كنت بحاجة إلى الحصول على حجم ملفات أو مجلدات متعددة ، فمن المستحسن استخدام طرق أخرى ، مثل استخدام فئة الملف أو فئة المسار.
الطريقة 4: استخدام فئة أورلكونكتيون
طريقة أخرى لمعرفة حجم الملف في جافا هو استخدام فئة أورلكونكتيون من مكتبة جافا القياسية. تتيح لك هذه الطريقة إنشاء اتصال بخادم بعيد والحصول على معلومات حول الملف ، بما في ذلك حجمه.
أولا ، تحتاج إلى إنشاء كائن ورل عن طريق تحديد عنوان الملف في المنشئ:
عنوان ورل = عنوان ورل جديد ("http://www.example.com/file.txt ");
بعد ذلك ، باستخدام طريقة أوبنكونكتيون () ، ونحن إنشاء كائن أورلكونكتيون:
اتصال أورككونكتيون = ورل.أوبينكونكتيون();
بعد ذلك ، باستخدام طريقة جيتكونتينتلنغث () ، يمكنك الحصول على حجم الملف:
الباحث حجم الملف = اتصال.جيتكونتينتلنغث();
طريقة جيتكونتينتلنغث() إرجاع حجم الملف في بايت ، أو -1 إذا كان حجم الملف غير معروف.
من المهم أن نلاحظ أنه عند استخدام فئة أورلكونكتيون ، لا يتم تحميل الملف بأكمله ، لذلك هذا الأسلوب هو أكثر فعالية عندما تحتاج فقط لمعرفة حجم الملف.
مثال على الكود الكامل:
استيراد جافا;
استيراد java.net .رابط;
استيراد جافا;
ملف الفئة العامةمثال {
العامة ثابت الفراغ الرئيسي (سلسلة[] الحجج) {
محاولة {
// إنشاء كائن ورل
URL url = new URL("http://www.example.com/file.txt");
// Создаем объект URLConnection
URLConnection connection = url.openConnection();
// Получаем размер файла
int fileSize = connection.getContentLength();
System.out.println("Размер файла: " + fileSize + " байт");
} catch (IOException e) {
e.printStackTrace();
}
}
}
هذه الطريقة عالمية ويمكن استخدامها للحصول على حجم الملفات من الخوادم البعيدة باستخدام هتب ، هتبس ، فتب ، الخ. البروتوكولات. ومع ذلك ، فهي غير مناسبة للحصول على حجم الملفات المحلية ، يجب استخدام طرق أخرى لهذا ، على سبيل المثال ، فئة الملف من الحزمة java.io .
سؤال وجواب
كيف يمكنني معرفة حجم الملف في جافا?
من أجل معرفة حجم الملف في جافا ، يمكنك استخدام طرق مختلفة. على سبيل المثال ، يمكنك استخدام طريقة الطول() لفئة الملف ، والتي ترجع حجم الملف بالبايت. يمكنك أيضا استخدام أساليب فئة الملفات من جافا.حزمة نيو ، مثل حجم () أو ريداتريبوتس () ، والتي أيضا إرجاع حجم الملف.
هل هناك طريقة لمعرفة حجم الملف دون فتحه?
نعم ، لدي. في جافا ، يمكنك استخدام أساليب فئة الملفات من جافا.حزمة نيو ، مثل حجم() أو ريداتريبوتس(). تتيح لك هذه الطرق الحصول على معلومات حول الملف ، بما في ذلك حجمه ، دون الحاجة إلى فتح الملف نفسه.
كيف يمكنني معرفة حجم الملف بالكيلو بايت?
لمعرفة حجم الملف بالكيلوبايت ، يمكنك أولا الحصول على حجمه بالبايت ، ثم تقسيم القيمة الناتجة على 1024 (منذ 1 كيلوبايت = 1024 بايت). على سبيل المثال ، إذا كان حجم الملف بالبايت هو 2048 ، فسيكون حجمه بالكيلوبايت 2.
كيف يمكنني معرفة حجم الملف في ميغابايت?
لمعرفة حجم الملف بالميغابايت ، يمكنك أولا الحصول على حجمه بالبايت ، ثم تقسيم القيمة الناتجة على 1024*1024 (منذ 1 ميغا بايت = 1024*1024 بايت). على سبيل المثال ، إذا كان حجم الملف بالبايت هو 2097152 ، فسيكون حجمه بالميغابايت 2.
كيف يمكنني معرفة حجم الملفات في دليل معين?