一直都被文件困扰着。希望大家能给个文件的程序。要求能向文件中添加数据和读出数据。用inputstream和outputstream。写入文件时判断文件是否存在。若存在则直接在文件末尾添加数据,否则创建一个文件。希望文件方面需要注意的知识越全面越好。谢谢

解决方案 »

  1.   

    LZ你好有爱
    InputStream is = new FileInputStream("文件路径",true);
    就会自动识别了,没有就创建,有就在末尾添加....外面再加上各种各样的处理流吧,多看看JDK
      

  2.   

    纠正:打错了 囧
    OutputStream is = new FileOutputStream("文件路径",true);
      

  3.   


    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;public class FileUtil {
    /***
     * 将指定文件中的信息读取到一个字节数组中
     * @param fileName
     * @return
     * @throws IOException
     */
    public  byte[]loadFileData(String fileName)throws IOException{
    byte[] filedate = new byte[1000];
    File fileIn = new File(fileName);
    if(fileIn.exists()){
    FileInputStream input = new FileInputStream(fileIn);
    input.read(filedate);
    input.close();
    }
    else{
    System.out.println("文件不存在");
    }
    return filedate;
    }
    /***
     * 将字节数组的信息保存到相应的文件中,同时记录所读取的字节数
     * @param fileName
     * @param data
     * @throws IOException
     */
        public  void saveDataToFile(String fileName,byte[]data)throws IOException{
    int byteNum;
    File fileOut = new File(fileName);
    if(!fileOut.exists()){
    fileOut.createNewFile();
    }
    FileOutputStream out = new FileOutputStream(fileOut);
    out.write(data);
    out.close();
        }
    }
      

  4.   

    读写很简单,乱写的:
    package test;import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.InputStreamReader;public class ReadWriteListFile {
    public static void main(String[] args) throws Exception { try { String fileName = "E:\\result.dat";
    String contents = "ReadWriteListFile.formatLst(lst)";
    saveFile(fileName, contents);
    String a = readFile(fileName);
    System.out.println(a);
    } catch (Exception e) {
    e.printStackTrace();
    }
    } public static String readFile(String fileName) throws Exception {
    String contents = "";
    String s = "";
    File f = new File(fileName);
    if (!f.exists()) {
    throw new Exception("file doesn't exist....");
    }
    BufferedReader br = null;
    try {
    br = new BufferedReader(new InputStreamReader(
    new FileInputStream(f))); while ((s = br.readLine()) != null) {
    contents += s + "\n";
    } System.out.println("read file finished");
    } catch (Exception e) {
    throw e;
    } finally {
    try {
    br.close();
    } catch (Exception e) { }
    }
    return contents;
    } static void saveFile(String fileName, String contents) throws IOException {
    File f = new File(fileName);
    BufferedWriter output = null;
    try {
    // 如果不存在
    if (!f.exists()) {
    // 建新文件
    if (!f.createNewFile()) {
    throw new IOException("file create failure...");
    }
    }
    // 这里的 true表示文件追加,false表示原来的都不要
    output = new BufferedWriter(new FileWriter(f, true));
    output.write(contents); } catch (Exception e) {
    e.printStackTrace();
    } finally {
    // 最后在finally关闭
    try {
    output.close(); } catch (Exception e) { }
    }
    }
    }