java txt转化为csv

感觉java的txt文件转化为csv文件的方法会难些。但是可以通过调用jar包里面现成的类方法来解决。

首先我在本地使用的是ideaij的maven,因此在pom.xml在加入依赖,来自动加载jar包到本地库。

<dependencies>
    <!-- https://mvnrepository.com/artifact/net.sourceforge.javacsv/javacsv -->
    <dependency>
        <groupId>net.sourceforge.javacsv</groupId>
        <artifactId>javacsv</artifactId>
        <version>2.0</version>
    </dependency>
</dependencies>

然后在java文件中添加import:

import com.csvreader.CsvWriter;

然后方法如下,path表示文件将要存储的路径:

//将txt文件存储为csv文件
    public void txtToCsv() {
        String readFile = path + "newFile.txt";
        String writeFile = path + "result.csv";
        File file = new File(readFile);
        ArrayList<ArrayList<String>> list = new ArrayList<ArrayList<String>>();
        try {
            CsvWriter csvWriter = new CsvWriter(path + "newfile.csv", ',',  Charset.forName("UTF-8"));
            FileReader fileReader = new FileReader(file);
            BufferedReader bufferedReader = new BufferedReader(fileReader);
            String string = "";
            while ((string = bufferedReader.readLine()) != null) {
                String[] s = string.split(" | +");
                csvWriter.writeRecord(s);
            }
            csvWriter.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

如果没有maven,只想通过linux中的shell命令执行java文件,需要在网上先download下来这个jar包,然后编译执行:

#方法1
javac -Djava.ext.dirs=/home/wangrui dataProcess.java 
#-Djava.ext.dirs表示jar包存放路径 
java -Djava.ext.dirs=/home/wangrui dataProcess
#方法2
javac -cp .:sample.jar dataProcess.java 
java -cp .:sample.jar dataProcess

方法2中sample.jar包就是你想要调用的jar包。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章