oracle数据库回车换行的转换

来源:互联网 发布:lol淘宝代练价格表 编辑:程序博客网 时间:2024/06/13 02:03

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);}}}





原创粉丝点击