首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >文本到JSON格式

文本到JSON格式
EN

Stack Overflow用户
提问于 2013-11-29 19:19:10
回答 1查看 137关注 0票数 0

我在想,能不能给我这样的短信:

代码语言:javascript
复制
ps:mandatory' child of Input command functions
Properties

ps:Source:
    f47437

ps:Created:
    2010-09-03T11:38:02.629Z

ps:ChangedBy:
    F47437

ps:Changed:
    2011-09-07T07:51:10.864Z

以JSON格式。问题是,..that文件包含了成千上万的文本类型,它们就像树族一样。我的重点是将其转换为JSON,保存相同的树逻辑。我只想问我自己的知识。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-29 19:24:35

你是说像这样吗?

代码语言:javascript
复制
{
    "ps:mandatory": "Properties",
    "ps:Source:": "f47437",
    "ps:Created:": "2010-09-03T11:38:02.629Z",
    "ps:ChangedBy:": "F47437",
    "ps:Changed:": "2011-09-07T07:51:10.864Z"
}

重要的是要记住,JSON是无序的,所以在将其存储在JSON中时,很可能会丢失标记的顺序。如果订单很重要,请考虑另一种文件格式。

下面的代码将把上面的数据转换成JSON。汇编和工作:

代码语言:javascript
复制
import org.json.*;
public class CreateMyJSON
{
    public static void main(String[] args)
    {
        String testData = "ps:mandatory\nProperties\n\nps:Source:\n    f47437\n\nps:Created:\n    2010-09-03T11:38:02.629Z\n\nps:ChangedBy:\n    F47437\n\nps:Changed:\n    2011-09-07T07:51:10.864Z\n\n";
        CreateMyJSON cmj = new CreateMyJSON();
        System.out.println(cmj.getJSONFromString(testData));
        }

    public String getJSONFromString(String theData)
    {   
        JSONObject jso = new JSONObject();
        //no error checking, but replacing double returns
        //to make this simpler
        String massagedData = theData.replaceAll("\n\n", "\n");
        String[] splits = massagedData.split("\n");
        for(int i = 0; i < splits.length; i++)
        {
            jso.put(splits[i].trim(), splits[++i].trim());
        }

        return jso.toString();
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20292186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档