簡而言之,我必須創建一個Java程序,該程序從輸入文件中讀取行並顯示在System.out語句中讀取的文本。文件中的其中一行是「是不是有點」。 Java然後讀取這條線作爲「這不是有點」。問題是撇號正在被讀作「」「。我一直在尋找許多論壇帖子,並且找不到能將「轉換」回撇號的解決方案。我搜索了什麼「“甚至是什麼,它說這意味着輸入是UTF-8格式?我如何將它轉換爲在System.out語句中正確讀取的格式。 另外,我不能蠻力強制將所有出現的'轉換成撇號的語句,因爲可能有其他UTF-8編碼文本會導致問題,所以我不能只是蠻橫地強制每一種可能性。無法將字符串轉換爲正確的編碼格式
0
A
回答
1
看起來您正在使用Windows-1252編碼來讀取文件。這裏有很好的表格顯示了兩種編碼標準之間的轉換。 http://www.i18nqa.com/debug/utf8-debug.html
該字符實際上並不是'
,而是實際上是’
。您可以指定在讀取文件時使用的編碼。看下面的例子。
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.charset.Charset;
import java.nio.file.Files;
import java.nio.file.Paths;
public class ReadFile {
public static void main(String[] args) throws IOException {
final ReadFile readFile = new ReadFile();
readFile.read("Windows-1252");
readFile.read("UTF-8");
}
private void read(final String charsetName) throws IOException {
//Java 8 version
Files.lines(Paths.get("myFile.txt"), Charset.forName(charsetName)).forEach(System.out::println);
//Older Java version
final BufferedReader bufferedReader2 = new BufferedReader(
new InputStreamReader(new FileInputStream("myFile.txt"), charsetName));
String currentLine;
while ((currentLine = bufferedReader2.readLine()) != null) {
System.out.println(currentLine);
}
}
}
+0
這對我有用。謝謝! – user3858843
0
如果您想在文件讀取時指定編碼,可以試試這個。
Reader reader = new InputStreamReader(new FileInputStream("path"), "UTF-8"));
相關問題
- 1. 試圖將字符串轉換爲正確的格式/編碼?
- 2. 正確的編碼風格爲轉換字節[]到字符串
- 3. 將jcharArray轉換爲具有正確編碼的字符串jni
- 4. 將HTML轉換爲格式正確的歸檔字符串
- 5. 將UTF-8數據轉換爲正確的字符串格式
- 6. 將XML字符串轉換爲xml無法切換編碼
- 7. 將字符串轉換爲字符,空格字符未正確轉換
- 8. 如何將字符串轉換爲編碼格式
- 9. 無法將字符串轉換爲int。錯誤信息:輸入字符串的不正確的格式
- 10. 無法將字符串轉換爲int。錯誤信息:輸入字符串的不正確的格式
- 11. 將字符串轉換爲格式爲
- 12. 無法將字符串轉換爲人類可讀的格式
- 13. 無法將類型'字符串'隱式轉換爲'字符串'
- 14. 將字符串轉換爲UCS2編碼
- 15. SQL - 無法將字符串轉換爲YYYYMMDD格式
- 16. 將字符串轉換爲正確的日期字符串
- 17. 將url編碼的字符串轉換爲python unicode字符串
- 18. 如何將Unicode編碼的字符串轉換爲字符串
- 19. 將一個字符串轉換成未格式化正確
- 20. JSON字符串無法轉換爲正確的Lua表
- 21. 無法將字符串轉換爲真
- 22. 無法將event.target轉換爲字符串
- 23. 無法將FindFileData.cFileName轉換爲字符串
- 24. 無法將字符串轉換爲json
- 25. 無法將零轉換爲字符串
- 26. 無法將字符串轉換爲Windows.UI.Xaml.Controls.IconElement
- 27. 無法將字符串轉換爲DateTime?
- 28. 無法將字符串轉換爲SimpleDateFormat
- 29. 無法將字符串轉換爲Guid
- 30. 無法將HTMLImageElement轉換爲字符串?
什麼是用於創建文件的編碼? – MordechayS