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();
  }
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android中文件读写(输入流和输出流)操作小结

    1. Android中文件读写的原理: (1).所有文件的储存都是字节的储存. (2).在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘. (3).在读取文件(特别是文本文件)时,也是一个字节一个字节的读取以形成字节序列. 2. 字节流和字符流的区别: (1).字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,字符流就可以. (2).字节流转换成字符流可以用InputStreamReader,OutputStreamWriter. 一般我们在

  • Android编程之文件读写操作与技巧总结【经典收藏】

    本文实例总结了Android文件读写操作.分享给大家供大家参考,具体如下: 在Android中的文件放在不同位置,它们的读取方式也有一些不同. 本文对android中对资源文件的读取.数据区文件的读取.SD卡文件的读取及RandomAccessFile的方式和方法进行了整理.供参考. 一.资源文件的读取: 1) 从resource的raw中读取文件数据: String res = ""; try{ //得到资源中的Raw数据流 InputStream in = getResources

  • Android编程之在SD卡上进行文件读写操作实例详解

    本文实例讲述了Android编程之在SD卡上进行文件读写操作的方法.分享给大家供大家参考,具体如下: 很多知识只有真正理解掌握之后才能运用自如,举一反三.对Java中的文件操作和android系统SD卡里面的文件操作,你觉得有区别吗,显然没有本质区别,如果勉强说有,那也是不足为道滴,但我们在实际运用中却要注意如下几点,不然问题会缠上你. 1.首先想要对android系统SD卡里文件操作需要添加使用权限: android系统是不会让外来程序随意动自己内存的,如果没有许可证,不好意思,不准你动我地盘

  • Android 文件读写操作方法总结

    Android 文件读写操作方法总结 在Android中的文件放在不同位置,它们的读取方式也有一些不同. 本文对android中对资源文件的读取.数据区文件的读取.SD卡文件的读取及RandomAccessFile的方式和方法进行了整理.供参考. 一.资源文件的读取: 1) 从resource的raw中读取文件数据: String res = ""; try{ //得到资源中的Raw数据流 InputStream in = getResources().openRawResource(

  • android 开发 文件读写应用案例分析

    一.基本概念 在Android应用中保存文件,保存的位置有两处 ①手机自带的存储空间,较小(如200M),适合保存一些小文件,Android中保存位置在data/data/应用包名/files目录 ②外存储设备如SD卡,较大,适合保存大文件如视频,Android中保存位置在mnt/sdcard目录,androd1.5,android1.6保存在sdcard目录 保存的位置通过android的file explorer视图可以找到 二.例子 复制代码 代码如下: /** * 文件操作类 * * @

  • android实现文件读写功能

    本文实例为大家分享了android实现文件读写功能的具体代码,供大家参考,具体内容如下 读取: public static String _getJsonString(String fileName) throws IOException { if ((fileName == null) || fileName.isEmpty()) { return ""; } String retString = ""; FileInputStream fis = null; S

  • python实现的config文件读写功能示例

    本文实例讲述了python实现的config文件读写功能.分享给大家供大家参考,具体如下: 1.设置配置文件 [mysql] host = 1234 port = 3306 user = root password = Zhsy08241128 database = leartd 2.读取配置文件 import configparser import os conf= configparser.ConfigParser() def readConf(): '''读取配置文件''' root_pa

  • android中NFC读写功能的实现方法

    本文实例为大家分享了android中NFC读写功能的具体代码,供大家参考,具体内容如下 首先检查一下设备是否支持NFC功能 private void checkNFCFunction() { // TODO Auto-generated method stub mNfcAdapter = NfcAdapter.getDefaultAdapter(this); // check the NFC adapter first if (mNfcAdapter == null) { // mTextVie

  • 基于Java实现Avro文件读写功能

    目录 模式(schema) 与其他系统的比较 Java客户端实现 定义一个schema 使用Java代码生成插件生成的User类进行序列化和反序列化 在不生成User类的情况下直接进行序列化和反序列化操作 总结 Apache Avro是一个数据序列化系统.具有如下基本特性: 丰富的数据结构.一种紧凑.快速的二进制数据格式.一个容器文件,用于存储持久数据.远程过程调用 (RPC).与动态语言的简单集成. 代码生成不需要读取或写入数据文件,也不需要使用或实现 RPC 协议. 代码生成作为一种可选的优

  • android实现NFC读写功能

    一.NFC是什么? 近距离无线通讯技术,这个技术由非接触式射频识别(RFID)演变而来,由飞利浦半导体(现恩智浦半导体公司).诺基亚和索尼共同研制开发,其基础是RFID及互连技术.近场通信(Near Field Communication,NFC)是一种短距高频的无线电技术,在13.56MHz频率运行于20厘米距离内.其传输速度有106 Kbit/秒.212 Kbit/秒或者424 Kbit/秒三种.目前近场通信已通过成为ISO/IEC IS 18092国际标准.ECMA-340标准与ETSI

  • c#保存窗口位置大小操作类(序列化和文件读写功能)

    记录窗口上次关闭的位置和大小 复制代码 代码如下: namespace PDSafe.Base{    public class Setting    {        ///<summary>        /// 把对象序列化为字节数组        ///</summary>        public static byte[] SerializeObject(object obj)        {            if (obj == null)         

  • android开发实现文件读写

    本文实例为大家分享了android实现文件读写的具体代码,供大家参考,具体内容如下 读取 /** * 文件读取 * @param is 文件的输入流 * @return 返回文件数组 */ private byte[] read(InputStream is) { //缓冲区inputStream BufferedInputStream bis = null; //用于存储数据 ByteArrayOutputStream baos = null; try { //每次读1024 byte[] b

  • nodejs创建简易web服务器与文件读写的实例

    web服务器至少有以下几个特点: 1.24小时不停止的工作,也就是说这个进程要常驻在内存中 2.24小时在某一端口监听,如: http://localhost:8080, www服务器默认端口80 3.要能够处理基本的请求:如get, post 在node js中创建一台服务器非常的简单,因为node自带http模块,该模块可以帮助我们非常快速搭建一台web服务器,来处理一个简单的请求. const http = require("http"); var server = http.c

随机推荐