首先提醒一点:这里要说明的是文件换行符,而不是程序中输出字符串的换行符(例如:eclipse控制台输出在java程序中用\r或\n或者\r\n都能达到换行输出的效果)。
操作系统换行符
ASCII(美国信息交换标准码)中有这样两个字符CR(
编码为13)和 LF(编码为10),在编程中通常表示为'\r'和'\n'。以下是各操作系统的换行符:
Unix和类Unix(如Linux):换行符采用 \n
Windows和MS-DOS:换行符采用 \r\n
Mac OS X:换行符采用 \n
实例说明
例如我现在从数据库读出数据写入一个文件,伪代码(该论坛提供的编辑器,代码格式很难调
)如下:
class="java" name="code">
for(int i = 1;i <= resultSet.getMetaData().getColumnCount();i++){
if(i == resultSet.getMetaData().getColumnCount()){
DBData.append(resultSet.getString(i).replace("\r\n", "").replace("\t","")+"\r\n");
}else{
DBData.append(resultSet.getString(i).replace("\r\n", "").replace("\t","")+"\001");
}
}
我这里实现了防止数据串行(\r\n)和跳格(\t),并且每个字段用分隔符(\001)自动分割,每条数据自动换行。实现效果如图(第一个字段为ID,以下非完整截图):
以下为linux环境数据截图:
windows环境(\001)在linux为^A(\001),\r\n为^M$。另外注意,需要以vi -b(VI的
二进制模式)方式打开文件才会显示^M(\r),用:set list显示特殊字符才可以查看到$(\n)。
如果对linux命令不熟悉的可以看看这篇文章(笔者已分类总结了绝大部分开发人员可能会用到的linux命令和知识):Linux常用命令参考与指南
原文永久地址:http://jsonliangyoujun.iteye.com/blog/2363195
- 大小: 48.2 KB
- 大小: 260.2 KB