向Android Studio项目添加静态JSON

向Android Studio项目添加静态JSON,android,json,Android,Json,我想将静态JSON添加到Android Studio项目中,然后可以在整个项目中引用该项目。有人知道最好的方法吗 更详细地说,我想做的是: 1) 从GooglePlacesAPI中提取数据 2) 查找与静态JSON对象中的位置匹配的Google位置 3) 根据匹配项在地图上放置标记 我有数字1和3,但想知道在我的项目中创建静态(常量)JSON对象并将其用于步骤2的最佳方法。您只需将JSON文件放入资产文件夹即可。稍后,您将能够读取文件、解析文件并使用值 上面发布的答案确实是我想要的,但我想我应该

我想将静态JSON添加到Android Studio项目中,然后可以在整个项目中引用该项目。有人知道最好的方法吗

更详细地说,我想做的是: 1) 从GooglePlacesAPI中提取数据 2) 查找与静态JSON对象中的位置匹配的Google位置 3) 根据匹配项在地图上放置标记


我有数字1和3,但想知道在我的项目中创建静态(常量)JSON对象并将其用于步骤2的最佳方法。

您只需将JSON文件放入资产文件夹即可。稍后,您将能够读取文件、解析文件并使用值

上面发布的答案确实是我想要的,但我想我应该添加一些我实现的代码来帮助其他人进一步解决这个问题:

1) 在assets文件夹的txt文件中定义JSON对象

2) 实现以字符串形式提取该对象的方法:

private String getJSONString(Context context)
{
    String str = "";
    try
    {
        AssetManager assetManager = context.getAssets();
        InputStream in = assetManager.open("json.txt");
        InputStreamReader isr = new InputStreamReader(in);
        char [] inputBuffer = new char[100];

        int charRead;
        while((charRead = isr.read(inputBuffer))>0)
        {
            String readString = String.copyValueOf(inputBuffer,0,charRead);
            str += readString;
        }
    }
    catch(IOException ioe)
    {
        ioe.printStackTrace();
    }

    return str;
}
3) 以您认为合适的任何方式解析对象。我的方法与此类似:

public void parseJSON(View view)
{
    JSONObject json = new JSONObject();

    try {
        json = new JSONObject(getJSONString(getApplicationContext()));
    } catch (JSONException e) {
        e.printStackTrace();
    }

   //implement logic with JSON here       
}

您应该在while循环中将字符串数据类型替换为StringBuilder,以获得正确优化的解决方案。 因此,在while循环中,您可以将readString附加到strStringBuilder,而不是连接


str.append(readString)

您是否可以添加一个
data.json
文件并添加它?或者你在问如何添加文件?谢谢,这就是我要找的。@Canadancoder我祝福你实现它。