首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

不同平台的换行符差异

不同平台的换行符差异

需要对文件进行读写,然后发现一个奇怪的现象。

linux生成的文件(规范的格式带换行)   在window中用记事本打开 没有换行。

原来是不同平台之间存在差异。

我们用notepad++进行查看  

就会发现

windows平台的换行符是CRLF



而linux平台的换行符是 LF



LF在windows的原生工具中是不能被识别成换行的。


但是  幸运的是在java中对文件流的读写。

    /**
         * 以行为单位读取文件,常用于读面向行的格式化文件
         */
        public static void readFileByLines(String fileName) {
            File file = new File(fileName);
            BufferedReader reader = null;
            try {
                System.out.println("以行为单位读取文件内容,一次读一整行:");
                reader = new BufferedReader(new FileReader(file));
                String tempString = null;
                int line = 1;
                // 一次读入一行,直到读入null为文件结束
                while ((tempString = reader.readLine()) != null) {
                    // 显示行号
                    System.out.println("line " + line + ": " + tempString);
                    line++;
                }
                reader.close();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                if (reader != null) {
                    try {
                        reader.close();
                    } catch (IOException e1) {
                    }
                }
            }
        }



reader.readLine()  可以读到 CRLF  或者LF的 换行
返回列表