假设我输入katheline\njoseph
了 db 表的列(数据类型-CLOB)。
在 java 端,我希望 o/p 为:
katheline
Joseph
ie \n 应该在java 端被识别为换行符。
java中是否有任何一种方法可以检索带有\n作为换行符的db列。
我不想做任何操作......例如。不希望使用字符串 Tokenizer 类或替换方法。他们工作正常,但我正在寻找直接方法
假设我输入katheline\njoseph
了 db 表的列(数据类型-CLOB)。
在 java 端,我希望 o/p 为:
katheline
Joseph
ie \n 应该在java 端被识别为换行符。
java中是否有任何一种方法可以检索带有\n作为换行符的db列。
我不想做任何操作......例如。不希望使用字符串 Tokenizer 类或替换方法。他们工作正常,但我正在寻找直接方法
\n
只是您可以在字符串中写入字符数 10(“换行符”)的一种方式。如果您从数据库中检索该字符,它将在您的字符串中。您可以遍历字符并验证它是:
for(int i=0; i<value.length(); i++)
{
char c = value.charAt(i);
int code = value.codePointAt(i);
System.out.println(c + " - " + code);
}
它应该打印:
A - 65
B - 66
- 10
C - 67
为了:
AB
C
手动 SQL
在 SQL 中:尝试char(10)
或类似的东西。这取决于 RDBMS。
用Java替换
如果您无法将 DB 中的值转换为真正的换行符,那么您可以执行以下操作:
value.replaceAll("\\\\n", "\\n");
它接收一个正则表达式:\\n
表示 bar 和 n 以及一个替换:\n
当我在写一个 Java 字符串时,我必须转义条,所以这就是为什么使用这么多条的原因。
用换行符将值写入 DB
永远不要将值写为文字 SQL:
insert into .... values ('myvalue');
使用参数:
insert into... values (?)
和
preparedStatement.setParam(1, myValue);