سؤال

كيف يمكنك مسح ملف مع Java غير الموجود في الدليل الذي يوجد فيه ملف Java؟

على سبيل المثال: يوجد ملف Java في "C: files javafiles test.java" ومع ذلك، فإن الملف الذي أريد المسح الضوئي موجود في "C: Data DataPacket99 Data.txt"

ملاحظة: لقد حاولت بالفعل وضع ملف Java آخر في دليل "C: Data" واستخدام ملف Test.java كصف، لكنه لا يعمل. لا يزال يحاول المسح الضوئي من الدليل "C: files javafiles".

هل كانت مفيدة؟

المحلول

باستخدام مسار مطلق بدلا من قريب.

File file = new File("C:\\Data\\DataPacket99\\data.txt");

ثم يمكنك كتابة التعليمات البرمجية التي تصل إلى كائن الملف، باستخدام Inputstream أو ما شابه ذلك.

نصائح أخرى

تحتاج إلى استخدام المسارات المطلقة في java.io الاشياء. وهكذا لا new File("data.txt"), ، لكن new File("C:/Data/DataPacket99/data.txt"). وبعد وإلا فإنه سيكون بالنسبة إلى دليل العمل الحالي الذي قد لا يكون نفسه هو نفسه في جميع البيئات أو الشخص الذي تتوقعه.

يجب أن تستخدم مسارا مطلقا بدلا من المسار النسبي.

يمكنك استخدام File file = new File("C:/Data/DataPacket99/data.txt"); ولكن قد تجعل حياتك أسهل في المستقبل لاستخدام ملف chooser الحوار إذا كان لدى المستخدم في أي وقت، فسيتعين على المستخدم إدخال مسار الملف.

سأحاول ذلك:

File file = new File("../../Data/DataPacket99/data.txt");
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top