`

java io写文件 在linux出现中文乱码

    博客分类:
  • java
阅读更多

java io写文件时写到文件的中文都成乱码,在windows是没问题的,主要是linux下默认字符集是utf-8,而windows默认编码是gbk,所以java 往文件里面写入中文时是根据系统默认字符集来写的。可以有两种方法,

1.在java io往文件写时强制用系统编码写,

StringfileEncode=System.getProperty("file.encoding");
FileoutFile=
new
File(path+separator+fileName);
if
(!outFile.exists()){
outFile.createNewFile();
}
else
{
outFile.delete();
outFile.createNewFile();
}

OutputStreamWriterow=
newOutputStreamWriter(new
FileOutputStream(outFile),fileEncode);
for(int
i=0;i<failList.size();i++)
{
ow.write(
newString(failList.get(i).getBytes("UTF-8"),fileEncode)+"\r\n"
);
}
ow.close();

2.修改linux的系统编码字符集

修改/etc/sysconfig/i18n 这个文件

将LANG="zh_CN.UTF-8"修改为:
LANG="zh_CN.GBK"
保存并关闭,运行下面的命令使配置生效:
shell> source /etc/sysconfig/i18n

分享到:
评论

相关推荐

    解决Linux操作系统下Java的中文乱码问题

    在Linux操作系统中,Java应用程序处理中文字符时可能会遇到乱码问题。这主要涉及到编码格式的不匹配,因为Linux系统默认采用UTF-8编码,而某些Java应用或文件可能使用了GB2312、GBK或其他编码。本篇将详细介绍如何...

    java读取文件中文乱码

    在Java编程中,读取包含中文字符的...通过理解和应用这些知识点,你可以有效地解决Java读取文件时出现的中文乱码问题。在实际开发中,对文件编码的理解和处理是至关重要的,能够确保程序正确地处理各种语言和字符集。

    java解析文件乱码解决

    本文将深入探讨如何解决Java中文件解析时出现的乱码问题。 首先,理解字符编码至关重要。常见的字符编码有ASCII、ISO-8859-1、GB2312、GBK、GB18030以及Unicode(包括UTF-8、UTF-16等)。在Java中,默认的字符编码...

    java操作串口linux环境下Java_gnu_io_RXTXPort_nativeDrain报错解决方案

    java控制串口发送数据时在windows环境下正常,linux环境下报错C [librxtxSerial.so+0x75da] Java_gnu_io_RXTXPort_nativeDrain+0xea,经多方查询验证为rxtx包版本问题,用本文档中的版本可以正常运行

    java中FileOutputStream中文乱码问题解决办法

    总之,当使用Java的`FileOutputStream`处理包含中文字符的文本时,需要通过`OutputStreamWriter`将其转换为字符流,并指定正确的字符编码(如UTF-8),这样才能确保中文字符在文件中正确显示,避免出现乱码。

    JAVA API中文帮助文档UTF-8编码格式,支持Linux操作系统

    本资源包含的Java API中文帮助文档,是针对Linux环境优化的,这意味着开发者在Linux环境下查阅这些文档时,无需担心因编码问题导致的乱码现象。这对于在Linux服务器上进行Java开发的程序员来说,是一个非常实用的...

    Java 解决中文路径问题

    当Java程序与操作系统交互时,如果没有正确处理编码转换,就会出现乱码或找不到文件的问题。 1. 文件路径的编码转换: - 使用`new File(String path)`构造File对象时,Java会尝试将路径字符串转换为平台相关的字节...

    Java IO流 文件的编码实例代码

    Java IO流文件编码是Java语言中的一种文件编码方式,它可以将文件转换成不同的编码格式,以便在不同的平台和系统中使用。在Java中,文件编码可以使用不同的方式,包括使用getBytes()方法将字符串转换成字节序列,...

    Java文件流的常见错误

    在Java编程中,文件流是处理输入/输出操作的核心部分,尤其在读写文件时。然而,新手开发者或经验不足的程序员经常会遇到一些常见的错误,这些错误可能导致程序崩溃、数据丢失或者性能问题。本篇文章将深入探讨Java...

    中文乱码.docx

    对于运行在Tomcat服务器上的Java应用而言,可以通过设置`file.encoding`参数来指定系统的默认文件编码格式为UTF-8,从而避免中文乱码问题的发生。 #### 三、具体实施步骤 ##### 1. Windows环境下的配置方法 在...

    java文件操作

    3. **编码问题**:在处理包含非ASCII字符的文件时,需要注意指定正确的字符集,以防止乱码问题出现。 4. **文件路径**:在不同的操作系统中,文件路径的分隔符可能会不同,如Windows使用`\`而Linux使用`/`,因此建议...

    java如何读取超大文件

    这是由于中文字符根据编码不同,会占用2到3个字节,而每次读取的字节数是固定的,如果该文件中第1023、1024、1025三个字节是一个汉字,那么一次读1024个字节就会将这个汉字切分成两瓣,生成String对象时就会出现乱码...

    Java编程中的中文问题.pdf

    Java编程中的中文问题主要围绕如何在Java程序中正确处理和显示中文字符,包括在不同环境下(如Windows、Linux、Web应用等)的编码转换问题,以及与数据库等外部系统交互时的字符编码问题。在Java开发中,由于Java采用...

    Zip文件解析(包含中文目录)

    在开发工具或应用时,为了支持Zip文件的读写,我们可以使用开源库,如Java的`java.util.zip`包,Python的`zipfile`模块,或者C#的`System.IO.Compression.ZipFile`类。这些库已经内置了解析和处理各种情况的逻辑,...

    java-编写跨平台Java程序注意事项

    应使用`java.io.File`类或`java.nio.file.Path`类中的方法来处理文件路径。 - 例如,使用`java.io.File.separator`获取当前平台的路径分隔符,或者使用`java.nio.file.Paths.get(path).toString()`来获取规范化路径...

    E06_IO复习.pdf

    在Java编程中,I/O(Input/Output)是处理数据传输的关键部分,涉及文件操作、网络通信等场景。以下是对E06_IO复习内容的详细解释: 1. 获取系统路径分隔符和名称分隔符: 在Java中,我们可以使用`File....

    Java串口通信RXTX包

    这个库使得Java开发者能够轻松地在各种操作系统上进行串行通信,包括Windows、Linux、Mac OS X等。 RXTX库的核心功能包括: 1. **串口打开和关闭**:通过指定端口号、波特率、数据位、停止位和校验位等参数,RXTX...

    hibernate 自动导入 sql 文件 import.sql 国际化编码的问题的解决方案

    为了确保在Windows平台上也能正确处理UTF-8编码的`import.sql`文件,并避免控制台乱码的问题,可以采取以下解决方案: 1. **文件命名策略:** 在项目类路径根目录下创建一个以`.UTF-8`作为扩展名的文件,例如`...

    Java实现将txt文件转成xls文件的方法

    它可以在Windows和Linux操作系统下正确地处理Excel文件。 下面是具体的实现代码: ```java package test; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io....

Global site tag (gtag.js) - Google Analytics