`
thinktothings
  • 浏览: 767207 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java读写csv文件,中文乱码问题

    博客分类:
  • Java
 
阅读更多

java读写csv文件,中文乱码问题

read

/**
  * 读取文件中的内容
  * @param file
  * @return
  */
 public Vector<String> readFile(File file){
  Vector<String> vector=new Vector<String>();
  
  if(file !=null && file.exists() && file.isFile() ){
   try {
    BufferedReader bufferdReader=new BufferedReader(new InputStreamReader(new FileInputStream(file),"GBK"));
    String strTem="";
    while((strTem=bufferdReader.readLine())!=null){
     vector.add(strTem);
    }
    log.debug("readfile:"+file);
   } catch (UnsupportedEncodingException e) {
    log.error(e.toString(),e.fillInStackTrace());
   } catch (FileNotFoundException e) {
    log.error(e.toString(),e.fillInStackTrace());
   } catch (IOException e) {
    log.error(e.toString(),e.fillInStackTrace());
   }
  }
  return vector;
 }

 

 

 

 

Write:

/**
  * 写一行数据到文件中,支持中文
  * @param file  文件
  * @param vector 数据
  * @return
  */
 public boolean writeFile(File file,Vector<String> vector){
    try {
   

        BufferedWriter bw =new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), "GBK")) ;// 附加
        // 添加新的数据行
        for (String s :vector) {
         bw.write(s);
         bw.newLine();
     }
 
        bw.close();
        log.debug("\n wirite file:"+file);
      } catch (FileNotFoundException e) {
       log.error(e.toString(),e.fillInStackTrace());
       return false;
      } catch (IOException e) {
       log.error(e.toString(),e.fillInStackTrace());
       return false;
      }
   
  return true;
 }

 

--java util

 

package com.think.common.file.csv;

import java.io.File;
import java.util.Vector;

import org.apache.log4j.Logger;
import org.junit.Test;

public class CSVFileResolveTest {

 Logger log = Logger.getLogger(CSVFileResolveTest.class);
 CSVFileResolve csvFileResolve = new CSVFileResolve();

 @Test
 public void testWriteCSVFile() {

  Vector<String> vector = new Vector<String>();
  vector.add("中国百姓");
  vector.add("11");
  vector.add("22");
  csvFileResolve.writeFile("a.csv", vector);
 }

 @Test
 public void testwriteCSVFile() {
  File file = new File("c.csv");
  Vector<String> vector = new Vector<String>();
  vector.add("中国百姓");
  vector.add("11");
  vector.add("22");
  csvFileResolve.writeFile(file, vector);
 }

 @Test
 public void testreadFile() {
  File file = new File("c.csv");
  Vector<String> vector = csvFileResolve.readFile(file);
  for (String s : vector) {
   log.debug(s);
  }
 }

}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics