我遇到了解析的真正问题,我不知道如何处理它。我正在研究一个非常不典型的信息返回的数据库。当您发出请求时,响应是纯文本的,我不知道如何解析它。
查询结果如下所示:
error=0;
---
name= Pen
detailname= TextMarker Highlighter Pink
---
没有涉及html,XML或json - 结果就像这样回来了。
我不知道如何解析Java中的纯文本。我如何解析例如,所以我只获得name =或任何其他类别的信息?我曾尝试使用JSoup,但我无法弄明白。任何有经验的人都可以了解我如何过滤这个吗?
谢谢你 保罗
答案 0 :(得分:1)
因为它看起来像* .properties文件,我建议
Properties p = new Properties();
p.load(inputStream);
您只需将结果作为InputStream或Reader(即StringReader)获取,然后可以像属性一样访问它。
String error = p.getProperty("error");
String name = p.getProperty("name");
String detailName = p.getProperty("detailname");
会得到你:
error: "0;"
name: " Pen"
detailName: " TextMarker Highlighter Pink"
唯一需要记住的是“---”也将成为物业中的一个条目。
值中的换行符可能会破坏这一点。
答案 1 :(得分:0)
不确定它是否可以在Android上运行但是在Java中,你不能使用Scanner
来阅读文本吗?
例如
Scanner scanner = new Scanner(new FileReader(fFile));
while ( scanner.hasNextLine() )
{
String content = scanner.next();
....
// check text for whatever values you need, e.g.
if(content.startsWith("name=")
{
// do your thing
....
}
}