Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中使用json解析器拆分文本_Java_Json - Fatal编程技术网

在java中使用json解析器拆分文本

在java中使用json解析器拆分文本,java,json,Java,Json,我的属性文件中只有几行字符串,我需要导入并拆分这些行,然后以我想要的方式使用它们 我的属性文件的格式示例 007.customerclass = component:keyboard;determinantType:key;determinant:test;waste 008.ReasonClass = component:mouse;determinantType:click;determinant:rest;RClass 我需要把整个007系列和008系列分成4个不同的部分。 预期输出:键

我的属性文件中只有几行字符串,我需要导入并拆分这些行,然后以我想要的方式使用它们

我的属性文件的格式示例

007.customerclass = component:keyboard;determinantType:key;determinant:test;waste
008.ReasonClass = component:mouse;determinantType:click;determinant:rest;RClass
我需要把整个007系列和008系列分成4个不同的部分。 预期输出:键盘键测试浪费和鼠标单击rest RClass

我已经使用
split
实现了这一点,但我想使用
jsonparser
来最小化代码


谢谢

这不是有效的JSON格式。但是,您可以通过以下方式解决此问题:

String propertyValue = "component:keyboard;determinantType:key;determinant:test;waste";

// tokenize the input string with the separator
StringTokenizer tokenizer = new StringTokenizer(test, ";");

// get the tokens and replace the unwanted part
String component = tokenizer.nextToken().replaceAll("component:", "");
String determinantType = tokenizer.nextToken().replaceAll("determinantType:","");
String determinant = tokenizer.nextToken().replaceAll("determinant:", "");
String endElement = tokenizer.nextToken();

System.out.println(">>1"+component+" 2>>"+determinantType+" 3>>"+determinant+" 4>>"+endElement);

我认为这不是一种有效的JSON格式,因此您可能无法使用JsonParserthis不是JSON格式。您可以帮助我使用该格式吗?StringTokenizer tokenizer=new StringTokenizer(test,“;”),这里的测试是什么?整个值都在一个属性文件中,它有100多条记录,这些记录应该拆分:(