Tôi gặp vấn đề với các tập tin đầu ra từ một chương trình sử dụng eclipse .i thiết thực của tôi sang UTF-8 và vớiđầu ra như mã UTF-8 trong java
System.getProperty("file.encoding")
tôi nhận ran UTF-8.i prog của tôi thông qua eclipse run-option và đầu ra (một tập tin văn bản) được mã hóa trong UTF-8.but khi tôi nén mã nguồn vào một tệp jar, tệp đầu ra hiển thị lỗi trong một số bảng chữ cái như Ã.what là này diff khi ruuning prog trong eclipse và frm jar tập tin? và tôi có phải xác định đầu ra được mã hóa trong utf-8 trong mã nguồn của tôi? pls giúp đỡ.
sự giúp đỡ từ @dacwe thực sự tạo ra những mong muốn output.but tôi có thể biết làm thế nào tôi có thể chạy thực thi của tôi .jar tập tin bên ngoài dòng lệnh như thế nào có thể các -Dfile.encoding = UTF-8
@dacwe:? I đã thử thay đổi mã nguồn của tôi thành
BufferedWriter bout = new java.io.BufferedWriter(new java.io.OutputStreamWriter(
new java.io.FileOutputStream(filename), "UTF-8"));
nhưng đầu ra vẫn chưa được mã hóa chính xác.những gì tôi bỏ lỡ ở đây?
thể trùng lặp của [? Thiết lập mã hóa ký tự Java mặc định] (http : //stackoverflow.com/questions/361975/setting-the-default-java-character-encoding) – dacwe
Đừng làm thế! Ngừng thiết lập các biến môi trường hoặc thuộc tính hệ thống để thiết lập mã hóa để sử dụng. Tất cả các lớp có liên quan trong Java đều có các hàm tạo mã hóa. Chỉ định mã hóa chính xác ở đó và bạn sẽ không bao giờ phải dựa vào cấu hình bên ngoài nữa. –
@ dacwe tôi đã không đề cập đến bất kỳ việc sử dụng System.setProperty ("file.encoding", "UTF-8") trong mã nguồn của tôi.so chạy mã của tôi qua nhật thực chạy luôn tạo ra kết quả mong muốn (tệp được mã hóa utf-8) nhưng không có trong tệp .jar. – reukEN11