io流

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.io.RandomAccessFile;
import java.util.HashMap;
import java.util.Map;

import com.google.gson.Gson;


public class io {

    /**
     * 清空file中的数据 添加
     * @param filePath
     */
    public static void File(String filePath) {
        try {
            File file = new File(filePath);
            PrintStream ps = new PrintStream(new FileOutputStream(file));
            ps.println("http://www.jb51.net1");// 往文件里写入字符串
            ps.append("http://www.jb51.net1");// 在已有的基础上添加字符串
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    /**
     * 在已有的基础上添加字符串
     * @param filePath
     */
    public static void FileWriter(String filePath,String param) {
        try {
            FileWriter fw = new FileWriter(filePath, true);
            BufferedWriter bw = new BufferedWriter(fw);
            bw.append(param+"\r\t"); 往已有的文件上添加字符串
//            bw.write(param);// 往已有的文件上添加字符串
            bw.close();
            fw.close();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    /**
     * 清空file中的数据  再添加
     * @param filePath
     */
    public static void PrintWriter(String filePath) {
        try {
            PrintWriter pw = new PrintWriter(new FileWriter(filePath));
            pw.println("abc1 ");
            pw.println("def1 ");
            pw.println("hef1 ");
            pw.close();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    /**
     * 替换文件中的内容
     * @param filePath
     */
    public  static void RandomAccessFile(String filePath) {
        try {
            RandomAccessFile rf = new RandomAccessFile(filePath, "rw");
            rf.writeBytes("111\t");
            rf.writeBytes("221\t");
            rf.writeBytes("331\t");
            rf.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 替换文件中的内容
     * @param filePath
     */
    public static void FileOutputStream(String filePath) {
        try {
            FileOutputStream fos = new FileOutputStream(filePath);
            String s = "12";
            fos.write(s.getBytes());
            fos.close();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    /**
     * 将文件转换成map存储
     * 
     * @return
     */
    private static Map<String, Object> getFile(String filePath) {
        Map<String, Object> map = new HashMap<String, Object>();
        File file = new File(filePath);
        BufferedReader reader = null;
        try {
            System.out.println("以行为单位读取文件内容,一次读一整行:");
            reader = new BufferedReader(new FileReader(file));
            String tempString = null;
            int line = 1;
            do {
           // 一次读入一行,直到读入null为文件结束
                if ((tempString = reader.readLine()) != null) {
                    // 显示行号
                    System.out.println("line " + line + ": " + tempString);
                    Gson gson = new Gson();
                    map = gson.fromJson(tempString, map.getClass());
                    Map<String, Object> dataMap=(Map<String, Object>) map.get("data");
                    for (Map.Entry<String, Object> m : map.entrySet()){
                        System.out.println(m);
                    }
                    line++;
                }
                    } while (reader.read()!=-1);
            reader.close();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (reader != null) {
                try {
                    reader.close();
                } catch (Exception e1) {
                }
            }
        }
       
        return map;
    }
    
    public static void main(String[] args) throws Exception {
        String filePath = "F://测试/link.txt";
        Map<String , Object>  DataMap=new HashMap<String, Object>();
        DataMap.put("name", "小明");
        DataMap.put("age", 12);
        DataMap.put("phone", "110");
        Map<String , Object>  map=new HashMap<String, Object>();
        map.put("status", "success");
        map.put("message", "获取成功");
        map.put("data", DataMap);
        
        FileWriter(filePath,map.toString());
        getFile(filePath);
    }
    
    

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值