当前位置: 首页 > 面试题库 >

从数据库列中检索Java时,Java不会将“ \ n”视为换行

金瑞
2023-03-14
问题内容

我面临一个奇怪的问题。
我正在做的是将一些值存储在DB(oracle 11g)中,作为 varchar2, 然后在java中获取值并处理获取的数据。
现在,我已经在数据库中使用 \ n 作为值,并使用来在Java中获取它rs.getString()。我正在获得适当的价值\n

String newLine=rs.getString("column_value");

现在我解析一个HTML页面并以字符串的形式获取整个页面,假设该页面有3行,每行描述了一些类似如下的信息:

Time: 08 AM - 11 AM
Duration : 36 minutes

现在,在代码中,我将 “ Duration:” 传递给方法,这将返回“ 36分钟”。
我使用的逻辑是获取 “ Duration:” 的索引并读取直到遇到“ \ n”。如果我将换行符声明为

String newLine= "\n";

但是,如果我从数据库获得它是行不通的。我知道我不需要将其存储在数据库中,但我不想对这些项目进行硬编码。所以我只需要将其存储在DB中。有人可以帮我吗???


问题答案:

如果当你打印newLine\n的输出,你可能需要您取消转义从数据库得到的字符串。Apache Commons Lang为此提供了一种方法:

http://commons.apache.org/proper/commons-
lang/javadocs/api-2.6/org/apache/commons/lang/StringEscapeUtils.html#unescapeJava(java.io.Writer,java.lang.String)

所以你只需要打电话

 String newLine = StringEscapeUtils.unescapeJava(rs.getString("column_value"));

希望这可以帮助



 类似资料:
  • 问题内容: 我正在制作一个程序,可以从我创建的数据库中检索字段的输入数据/值。但是,当我运行它时,输出始终为null。不知道怎么了 这是我的代码: 在我的主班我有以下代码: 我不知道为什么我运行它时总是说null。 问题答案: 您实际上并没有在设置员中“设置”任何东西。 最重要的是:我对getter和setter的理解使您可以在getter中进行查询。

  • 问题内容: 我知道如何从Java数据库中检索数据(只是表中的文本),以及如何在控制台中显示数据。但我想将其加载到JTable中。有没有使用Vector的良好(现代)方法(教程)? 问题答案: 查看本教程:如何使用表

  • 我正在两个标记之间画一条路线,我想保存那条路线。为此,我将包含lat和lng的ArrayList保存在Firebase数据库中。但我在取回航路点时遇到了问题。我是这样插入的: 在检索数据时,我尝试执行以下操作:

  • 问题内容: 我目前正在学习Firebase和iOS的知识,因此请耐心等待。我当前正在发布到我的表,如下所示: 我正在尝试检索插入新记录时创建的内容,但是无法检索它。我已经尝试过( 但是由于浏览网页而无法找到一个可靠的解决方案,所以这是一个随机的猜测 )。有任何想法吗? 问题答案: 注意 :-Althogh 是自以来的一项强大功能,但是当您想创建具有唯一键的节点时更喜欢将数据存储到其中。我之所以喜欢

  • 请帮助我想从Firebase实时数据库检索一个特定的数据,我有2个用户,教授和学生,我想使用该数据进行验证。 FireBase实时数据库 FireBase实时数据库