windows文件换行符与linux文件换行符_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > windows文件换行符与linux文件换行符

windows文件换行符与linux文件换行符

 2017/3/15 5:35:53  JsonLiangyoujun  程序员俱乐部  我要评论(0)
  • 摘要:首先提醒一点:这里要说明的是文件换行符,而不是程序中输出字符串的换行符(例如:eclipse控制台输出在java程序中用\r或\n或者\r\n都能达到换行输出的效果)。操作系统换行符ASCII(美国信息交换标准码)中有这样两个字符CR(编码为13)和LF(编码为10),在编程中通常表示为'\r'和'\n'。以下是各操作系统的换行符:Unix和类Unix(如Linux):换行符采用\nWindows和MS-DOS:换行符采用\r\nMacOSX
  • 标签:Windows Linux 文件
    首先提醒一点:这里要说明的是文件换行符,而不是程序中输出字符串的换行符(例如: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
  • 查看图片附件
发表评论
用户名: 匿名