android 文件读写

简介: android 文件读写读取:public static String _getJsonString(String fileName) throws IOException { if ((fileName == null) || fileName.

android 文件读写
读取:

public static String _getJsonString(String fileName)

        throws IOException {
    if ((fileName == null) || fileName.isEmpty()) {
        return "";
    }
    String retString = "";
    FileInputStream fis = null;
    String state = Environment.getExternalStorageState();
    if (state.equals(Environment.MEDIA_MOUNTED)) {
        File file = new File(Environment.getExternalStorageDirectory()
                + "/" + fileName + ".json");
        if (file.exists()) {
            fis = new FileInputStream(file);
            byte[] buffer = new byte[fis.available()];
            fis.read(buffer);
            fis.close();

            retString = new String(buffer);
        } else {

        }
    }
    return retString;
}

写:

public static void saveSettingFile(String fileName, String content) {

    FileOutputStream fos = null;
    String state = Environment.getExternalStorageState();
    if (state.equals(Environment.MEDIA_MOUNTED)) {
        File file = new File(Environment.getExternalStorageDirectory()
                + "/" + fileName + ".json");
        try {
            fos = new FileOutputStream(file);
            byte[] buffer = content.getBytes();
            fos.write(buffer);
            fos.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Gson 读写:

public static void saveServerInfo(String fileName, String content) {

    FileOutputStream fos = null;
    String state = Environment.getExternalStorageState();
    if (state.equals(Environment.MEDIA_MOUNTED)) {
        File file = new File(Environment.getExternalStorageDirectory()
                + "/" + fileName + ".json");
        try {
            fos = new FileOutputStream(file);
            byte[] buffer = content.getBytes();
            fos.write(buffer);
            fos.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

public static ServerInfo getServerInfo(String fileName)
        throws IOException {
    ServerInfo serverInfo = new ServerInfo();
    if ((fileName == null) || fileName.isEmpty()) {
        serverInfo = null;
        return serverInfo;
    }
    FileInputStream fis = null;
    String state = Environment.getExternalStorageState();
    if (state.equals(Environment.MEDIA_MOUNTED)) {
        File file = new File(Environment.getExternalStorageDirectory()
                + "/" + fileName + ".json");
        if (file.exists()) {
            fis = new FileInputStream(file);
            byte[] buffer = new byte[fis.available()];
            fis.read(buffer);
            fis.close();

            Gson gson = new Gson();
            serverInfo = gson.fromJson(new String(buffer),
                    ServerInfo.class);
        } else {
            serverInfo = null;
        }
    }
    return serverInfo;
}

调用:

public void onSetIPAndPort(View view) {

    ServerInfo serverInfo = new ServerInfo();
    try {
        serverInfo = JsonFileWriteAndRead.getServerInfo("videochat");
    } catch (IOException e) {
        e.printStackTrace();
    }

    //写入ip和端口
    String ip = ipSet.getText().toString();
    String port = portSet.getText().toString();
    serverInfo.setIpString(ip);
    serverInfo.setPortString(port);
    Gson gson = new Gson();
    if (ip.isEmpty() || port.isEmpty()) {
        Toast.makeText(this, "地址或端口为空", Toast.LENGTH_SHORT).show();
    } else {
        JsonFileWriteAndRead.saveServerInfo("videochat", gson.toJson(serverInfo));
        Toast.makeText(this, "地址和端口已经写入文件", Toast.LENGTH_SHORT).show();
    }
}

 

作者:小新110
来源:CSDN
原文:https://blog.csdn.net/cau_eric/article/details/90410761
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
|
20天前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
27 1
|
20天前
|
Shell Android开发
Android系统 init.rc文件详解
Android系统 init.rc文件详解
37 0
|
3天前
|
Android开发
android string.xml文件中的整型和string型代替
android string.xml文件中的整型和string型代替
|
5天前
|
Android开发
android 12 U盘 /mnt/media_rw 下读取文件异常 没有权限
android 12 U盘 /mnt/media_rw 下读取文件异常 没有权限
10 0
|
5天前
|
XML Android开发 数据安全/隐私保护
android 11后文件读写访问权限申请
android 11后文件读写访问权限申请
12 0
|
5天前
|
JSON Android开发 数据格式
Android 打开系统文件管理器,并返回选中文件的路径
Android 打开系统文件管理器,并返回选中文件的路径
12 0
|
20天前
|
Java Android开发 C++
Android源代码定制:MK文件执行顺序|属性覆盖
Android源代码定制:MK文件执行顺序|属性覆盖
18 2
Android源代码定制:MK文件执行顺序|属性覆盖
|
20天前
|
存储 Java API
Android系统 文件访问权限笔记
Android系统 文件访问权限笔记
55 1
|
20天前
|
移动开发 Java Unix
Android系统 自动加载自定义JAR文件
Android系统 自动加载自定义JAR文件
42 1
|
20天前
|
Android开发
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
5 0