1. 程式人生 > >Nio的讀入與寫出

Nio的讀入與寫出

逐行讀入:

    import java.io.IOException;  
    import java.nio.charset.Charset;  
    import java.nio.file.Files;  
    import java.nio.file.Paths;  
    import java.util.List;  
      
    public class NioReadFile {  
      
        public static void main(String[] args) {  
      
            String fileName = "D:\\CIME\\measure.CIME";  
      
            String charset = CommonsMethods.getFileCharset(fileName);  
      
            System.out.println("charset=" + charset);  //charset是編碼格式
      
            try {  
                List<String> lines = Files.readAllLines(Paths.get(fileName),  
                        Charset.forName(charset));  
      
                for (String line : lines) {  
                    System.out.println(line);  
                }  
            } catch (IOException e) {  
                e.printStackTrace();  
            }  
        }  
    }  

逐行輸出:

//將郵箱 姓名和最後生成的連結資料寫入csv檔案
    private void writeCsv(String content, String fileName) throws IOException {
        File f = new File(defaultCsvpath);
        f.setWritable(true);
        if (!f.exists()) {  //如果該路徑不存在,就建立該路徑
            f.mkdir();
        }
        String filePath = defaultCsvpath + "/" + fileName;  //得到完整檔案路徑
        FileOutputStream fos = null;
        FileChannel fc_out = null;
        try {
            fos = new FileOutputStream(filePath, true);
            fc_out = fos.getChannel();
            ByteBuffer buf = ByteBuffer.wrap(content.getBytes());
            buf.put(content.getBytes());
            buf.flip();
            fc_out.write(buf);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (null != fc_out) {
                fc_out.close();
            }
            if (null != fos) {
                fos.close();
            }
        }
    } 

參考:http://xurichusheng.iteye.com/blog/2266842,https://blog.csdn.net/cynhafa/article/details/7410035

stream方式:

http://justcode.ikeepstudying.com/2017/05/java-java8%E6%B5%81%E9%80%90%E8%A1%8C%E8%AF%BB%E5%8F%96%E6%96%87%E4%BB%B6/