يمكنك تحديد الترميز مثل: UTF-8 لكتابة وقراءة الملفات. إذا كان ترميز الملف غير معروف ، فيمكنك استخدام هذه الطريقة للحصول على ترميز الملف أولاً ثم تحديد الترميز الصحيح لقراءته ، وإلا ستحدث مشكلة مشوهة الملف.
كيفية تحديد ترميز الملفات ، يرجى الرجوع إلى: تقرأ Java تلقائيًا وفقًا لترميز محتوى الملف لتجنب التعليمات البرمجية المشوهة
نسخة الكود كما يلي:
حزمة com.zuidaima.util ؛
استيراد java.io.bufferedreader ؛
استيراد java.io.bufferedWriter ؛
استيراد java.io.file ؛
استيراد java.io.fileInputStream ؛
استيراد java.io.fileOutputStream ؛
استيراد java.io.ioException ؛
استيراد java.io.inputstreamreader ؛
استيراد java.io.outputStreamWriter ؛
الطبقة العامة readWriteFileWithencode {
كتابة الفراغ الثابت العام (مسار السلسلة ، محتوى السلسلة ، تشفير السلسلة)
يلقي ioexception {
ملف الملف = ملف جديد (مسار) ؛
file.delete () ؛
file.createNewFile () ؛
BufferedWriter Writer = New BufferedWriter (New OutputStreamWriter (
FileOutputStream جديد (ملف) ، ترميز)) ؛
Writer.write (المحتوى) ؛
الكاتب.
}
سلسلة ثابتة القراءة (مسار السلسلة ، تشفير السلسلة) يلقي ioException {
سلسلة المحتوى = "" ؛
ملف الملف = ملف جديد (مسار) ؛
BufferedReader Reader = جديد BufferedReader (New InputStreamReader (
FileInputStream جديد (ملف) ، ترميز)) ؛
خط السلسلة = فارغ ؛
بينما ((line = reader.readline ())! = null) {
content + = line + "/n" ؛
}
reader.close () ؛
إرجاع المحتوى ؛
}
الفراغ الثابت العام (سلسلة [] args) يلقي ioexception {
Content Content = "المحتوى الصيني" ؛
string path = "c: /test.txt" ؛
سلسلة الترميز = "UTF-8" ؛
readWriteFileWithencode.write (المسار ، المحتوى ، الترميز) ؛
System.out.println (readWriteFileWithencode.Read (المسار ، الترميز)) ؛
}
}