Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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
是否可以通过编程方式更改json资源文件?或者根据用户类型更改FileUtils.java以使用不同的json文件?_Java_Json_Applozic - Fatal编程技术网

是否可以通过编程方式更改json资源文件?或者根据用户类型更改FileUtils.java以使用不同的json文件?

是否可以通过编程方式更改json资源文件?或者根据用户类型更改FileUtils.java以使用不同的json文件?,java,json,applozic,Java,Json,Applozic,我知道我的问题措辞有些混乱,但是 我的应用程序正在使用一个名为Applozic的即时消息SDK。为了在UI中隐藏/添加某些功能,有一个可以编辑的applozic-settings.json文件 例如:“hideGroupExitButton”:true 我的应用程序有两种类型的用户:发送者和接收者。发送方具有一些接收方不具备的功能。。。因此,我需要根据用户类型更改其中一些值 那么:是否可以根据用户类型以编程方式更改其中一些值 (applozic-settings.json仅用于FileUtils

我知道我的问题措辞有些混乱,但是

我的应用程序正在使用一个名为Applozic的即时消息SDK。为了在UI中隐藏/添加某些功能,有一个可以编辑的applozic-settings.json文件

例如:
“hideGroupExitButton”:true

我的应用程序有两种类型的用户:发送者和接收者。发送方具有一些接收方不具备的功能。。。因此,我需要根据用户类型更改其中一些值

那么:是否可以根据用户类型以编程方式更改其中一些值

(applozic-settings.json仅用于FileUtils.java-——这是一个锁定文件…)

或者,我是否需要为其中一种用户类型创建一个新的json文件,并以某种方式更改FileUtils.java以使用正确的文件

以下是FileUtils.java中的相关代码:


public static String loadSettingsJsonFile(Context context) {
    BufferedReader br = null;
    StringBuffer sb = new StringBuffer();
    try {
        br = new BufferedReader(new InputStreamReader(context.getAssets().open(
                "applozic-settings.json"), "UTF-8"));
        String line;
        if (br != null) {
            while ((line = br.readLine()) != null) {
                sb.append(line);
            }
        }
    } catch (IOException ioe) {
        return null;
    } catch (Exception e) {
    } finally {
        try {
            if (br != null) {
                br.close();
            }
        } catch (IOException e) {
        }
    }
    return sb.toString();
}


如果我理解正确,就可以编辑JSON文件的值。见:

如果要根据用户打开不同的文件,只需将不同的文件存储在字符串中,例如:

br = new BufferedReader(new InputStreamReader(context.getAssets().open(
                "applozic-settings.json"), "UTF-8"));
您可以简单地说
string file=“applozic settings.json”

并直接传递到上面的函数中:

br = new BufferedReader(new InputStreamReader(context.getAssets().open(
                file), "UTF-8"));
所以本质上你可以说:

string file;
if(userType == x){
   file="x.json"
}
else{
   file="y.json"
}


如果您想使用Java轻松地读/写JSON文件,我建议使用JsonSimple库。简介:Jar下载:我们在ApplozicSetting.java中有一些设置,您可以在代码中以编程方式进行设置,您可以在该文件中找到这些设置。如果您想添加任何设置,请通过applozic支持电子邮件与我们联系support@applozic.com