>  기사  >  Java  >  Java에서 txt 파일을 읽고 쓸 때 중국어 문자 깨짐을 방지하는 방법 소개

Java에서 txt 파일을 읽고 쓸 때 중국어 문자 깨짐을 방지하는 방법 소개

高洛峰
高洛峰원래의
2017-01-20 16:15:381513검색

문제: Java 프로그램을 사용하여 한자가 포함된 txt 파일을 읽고 쓸 때 읽거나 쓴 내용이 종종 깨져 보이는 경우가 있습니다. 그 이유는 실제로 매우 간단합니다. 즉, 시스템 인코딩과 프로그램 인코딩이 서로 다른 인코딩 형식을 사용하기 때문입니다. 보통 직접 수정하지 않으면 윈도우 자체에서 사용하는 인코딩 형식은 gbk(그리고 gbk와 gb2312는 기본적으로 인코딩 방식이 동일함)이고, IDE의 Encode를 수정하지 않으면 기본 인코딩은 utf- 8, 이것이 문자가 왜곡된 이유입니다. OS에서 수동으로 생성하고 작성한 txt 파일(gbk)을 프로그램(utf-8)에서 직접 읽으면 깨져버리는 현상이 발생합니다. 가능한 중국어 왜곡 문제를 방지하려면 파일을 쓰고 읽을 때 인코딩 형식을 명시적으로 지정하는 것이 가장 좋습니다.

1. 쓰기 파일:

public static void writeFile(String fileName, String fileContent) 
{  
  try 
  {  
    File f = new File(fileName);  
    if (!f.exists()) 
    {   
      f.createNewFile();  
    }  
    OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"gbk");  
    BufferedWriter writer=new BufferedWriter(write);    
    writer.write(fileContent);  
    writer.close();  
  } catch (Exception e) 
  {  
    e.printStackTrace();  
  }
}

2. 읽기 파일:

public static String readFile(String fileName)
{  
  String fileContent = "";  
  try 
  {   
    File f = new File(fileName);  
    if(f.isFile()&&f.exists())
    {   
      InputStreamReader read = new InputStreamReader(new FileInputStream(f),"gbk");   
      BufferedReader reader=new BufferedReader(read);   
      String line;   
      while ((line = reader.readLine()) != null) 
      {   
        fileContent += line;   
      }    
      read.close();  
    }  
  } catch (Exception e) 
  {    
    e.printStackTrace();  
  }  
  return fileContent; 
}

더 많은 Java가 txt 파일을 읽고 씁니다. 중국어 깨짐 문제를 방지하는 방법에 대한 관련 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.