oracle数据库回车换行的转换

Ascall码表中对应的控制符

chr(9) HT 制表符 \t  :
chr(10) LF 换行 \n :newline :是换行,后者使光标下移一格,(line feed)
chr(13) CR 回车 \r :return:是回车,前者使光标到行首,(carriage return)
chr(32) (space) 空格

\r\n :Dos和windows采用回车+换行CR/LF表示下一行,即^M$($不是换行符的表示,换行符没有表示出来,$是文本结束EOF的表示)
\n :UNIX/Linux采用换行符LF表示下一行

\r  :Mac系统里,每行结尾是“<回车>”,即“\r”


Oracle中采用 回车+换行CR/LF表示下一行 :

左箭头换行:insert into XXX (filed1) values ('abc'||chr(13)||'123');
下箭头换行:insert into XXX (filed1) values ('abc'||chr(10)||'123');
回车换行    :insert into XXX (filed1) values ('abc'||chr(13)||chr(10)||'123');

在sakura等文本编辑器里都可显示成换行效果,但在windows的notepad里只有回车换行显示成了换行效果


1、DBvis中可以右键字段单元格,Edit Cell in Windows,在编辑框中可以敲入回车(此回车不是chr(13)),取出之后可以使用
replace("\n", "AAA")替换为AAA,如果是拼接chr(13)存入数据库的无法使用前面的replace替换,replace(""+(char)13, "AAA")
因为replace无法传入字符,所以与空字符串拼接转为字符串

2、如果在存入数据库时输入'\n',此时为两个字节,在java取出时同样为两个字节,在java中"\n"长度只是为1,所以无法使用replace("\n", "AAA")替换为AAA,
但是可以使用replace("\\n", "AAA")

3、chr(13)取出在控制台为换行,导入word之后变为空格(查找半全角都找不到),复制到excel显示换行

4、在DBvis中右键编辑敲入回车是'\r\n',在控制台显示换行,replace("\r\n", "AAA")


打印输出Ascall编码:开头几个显示乱码与编码无关

public class Ascall {
	public static void main(String[] args) {
		for (int i = 0; i < 128; i++) {
			System.out.println("(char)" + i + " : "+(char) i);
		}
	}
}





  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值