java - java中filereader和filewriter的默认字符集是什么
问题描述
在这里,我试图从一个文件中读取内容并将其写入另一个文件。我的文件包含不同的语言单词和符号,像这样
Good morning
காலை வணக்கம்
早上好
˙©†®∑œß≈√ƒ∂
◊Ï˝◊´‰Ó˝◊ˇÁı؈ˇ¨˝Ï˛„ˇÁ¨
当我像这样使用具有指定字符集的文件读取器和写入器时,它可以正常工作并正确复制。
BufferedReader br = new BufferedReader(new FileReader("f1.txt",StandardCharsets.UTF_8));
BufferedWriter bw = new BufferedWriter(new FileWriter("f2.txt",StandardCharsets.UTF_8));
但是当我没有指定字符集时,它会将给定的文本复制到一些未知的符号,就像这样,
Good morning
காலை வணக�கம�
早上好
˙©†®∑œß≈√ƒ∂
â—ŠÃ?Ë?◊´‰ÓË?◊ˇÃ?ı؈ˇ¨Ë?Ã?˛„ˇÃ?¨
所以,这意味着当我没有指定字符集时,它必须使用默认字符集。那么,它使用的是什么字符集?filereader 和 filewriter 以及其他 io 类的默认字符编码是什么。
谁能解释一下。
提前致谢
解决方案
推荐阅读
- powerbi - 从 Power BI 报告卡视觉对象复制文本
- angular - ag-grid csv 导出 - 使用 processCellCallback 格式化
- kubernetes - Grep 前一场比赛
- algorithm - 不可能的搜索算法面试题
- javascript - 无法使用 ionic 4 在 Android 中建立套接字连接
- x509certificate - 设备注册(使用 DPS)和设备到 IOT Hub 通信,无需 SDK
- java - Android 视图中真实世界的维度有多可靠?
- python - 如何检查字符串中的值/字符是否等于整数。Python
- c++ - 带有 if 属性的 For 循环
- powershell - 如何只取出字符串的一部分