软件编程
位置:首页>> 软件编程>> Android编程>> android实现文件读写功能

android实现文件读写功能

作者:小新110  发布时间:2022-03-10 16:31:23 

标签:android,文件读写

本文实例为大家分享了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();
}
}

来源:https://blog.csdn.net/cau_eric/article/details/90410761

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com