1.创建文件
import java.io.File;
import java.io.IOException;
public class CreateFileExample
{
    public static void main( String[] args )
    {
        try {
          File file = new File("c:\\newfile.txt");
      //创建文件使用createNewFile()方法
          if (file.createNewFile()){
            System.out.println("File is created!");
          }else{
            System.out.println("File already exists.");
          }
        } catch (IOException e) {
          e.printStackTrace();
    }
    }
}2.建立文件路径
import java.io.File;
import java.io.IOException;
public class FilePathExample1 {
    public static void main(String[] args) {
      try {
        String filename = "newFile.txt";
        String workingDirectory = System.getProperty("user.dir");
        //****************//
        String absoluteFilePath = "";
        //absoluteFilePath = workingDirectory + System.getProperty("file.separator") + filename;
        absoluteFilePath = workingDirectory + File.separator + filename;
        System.out.println("Final filepath : " + absoluteFilePath);
        //****************//
        File file = new File(absoluteFilePath);
        if (file.createNewFile()) {
            System.out.println("File is created!");
        } else {
            System.out.println("File is already existed!");
        }
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
}
/////////////////////////////////////////////////////////////////
import java.io.File;
import java.io.IOException;
public class FilePathExample2 {
    public static void main(String[] args) {
      try {
        String filename = "newFile.txt";
        String workingDirectory = System.getProperty("user.dir");
        //****************//
        File file = new File(workingDirectory, filename);
        //****************//
        System.out.println("Final filepath : " + file.getAbsolutePath());
        if (file.createNewFile()) {
            System.out.println("File is created!");
        } else {
            System.out.println("File is already existed!");
        }
      } catch (IOException e) {
        e.printStackTrace();
      }
    }
}3.设置文件权限
@检查文件权限是否设置
@设置权限 
- file.setExecutable(boolean) 
- file.setReadable(boolean) 
- file.setWritable(boolean)
代码演示 :
package com.File;
import java.io.File;
import java.io.IOException;
public class FilePermissionExample
{
    public static void main( String[] args )
    {
        try {
        //1.未设置权限    
          File file = new File("D:\\2.txt");
//        if(file.exists()){
//        System.out.println("是否可执行: " + file.canExecute());
//        System.out.println("是否可写 : " + file.canWrite());
//        System.out.println("是否可读 : " + file.canRead());
//        }
        //2.已设置权限
          file.setExecutable(false);
          file.setReadable(false);
          file.setWritable(false);
          System.out.println(" 是否可执行: " + file.canExecute());
          System.out.println("是否可写 : " + file.canWrite());
          System.out.println("是否可读  : " + file.canRead());
          if (file.createNewFile()){
            System.out.println("文件已创建!");
          }else{
            System.out.println("文件已存在");
          }
        } catch (IOException e) {
          e.printStackTrace();
        }
    }
}4.读取文本内容的重要几个流
@.BufferedInputStream、 DataInputStream的使用
import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class BufferedInputStreamExample {
    public static void main(String[] args) {
        File file = new File("C:\\testing.txt");
        FileInputStream fis = null;
        BufferedInputStream bis = null;
        DataInputStream dis = null;
        try {
            fis = new FileInputStream(file);
            bis = new BufferedInputStream(fis);
            dis = new DataInputStream(bis);
            while (dis.available() != 0) {
                System.out.println(dis.readLine());
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                fis.close();
                bis.close();
                dis.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
    }
}@ FileInputStream的使用
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
public class ReadFileExample {
    public static void main(String[] args) {
        File file = new File("C:/robots.txt");
        FileInputStream fis = null;
        try {
            fis = new FileInputStream(file);
            System.out.println("Total file size to read (in bytes) : "
                    + fis.available());
            int content;
            while ((content = fis.read()) != -1) {
                // convert to char and display it
                System.out.print((char) content);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (fis != null)
                    fis.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
    }
}@BufferedReader的使用
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileExample1 {
    private static final String FILENAME = "E:\\test\\filename.txt";
    public static void main(String[] args) {
        BufferedReader br = null;
        FileReader fr = null;
        try {
            //br = new BufferedReader(new FileReader(FILENAME));
            fr = new FileReader(FILENAME);
            br = new BufferedReader(fr);
            String sCurrentLine;
            while ((sCurrentLine = br.readLine()) != null) {
                System.out.println(sCurrentLine);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (br != null)
                    br.close();
                if (fr != null)
                    fr.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
    }
}
#################################################################
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileExample2 {
    private static final String FILENAME = "E:\\test\\filename.txt";
    public static void main(String[] args) {
        try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {
            String sCurrentLine;
            while ((sCurrentLine = br.readLine()) != null) {
                System.out.println(sCurrentLine);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
#################################################################5.写入文本的几个重要的流
@FileOutputStream 的使用
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class WriteFileExample {
    public static void main(String[] args) {
        File file = new File("c:/newfile.txt");
        String content = "This is the text content";
        try (FileOutputStream fop = new FileOutputStream(file)) {
            // if file doesn‘t exists, then create it
            if (!file.exists()) {
                file.createNewFile();
            }
            // get the content in bytes
            byte[] contentInBytes = content.getBytes();
            fop.write(contentInBytes);
            fop.flush();
            fop.close();
            System.out.println("Done");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}@BufferedWriter的使用
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class WriteToFileExample2 {
    private static final String FILENAME = "E:\\test\\filename.txt";
    public static void main(String[] args) {
        try (BufferedWriter bw = new BufferedWriter(new FileWriter(FILENAME))) {
            String content = "This is the content to write into file\n";
            bw.write(content);
            // no need to close it.
            //bw.close();
            System.out.println("Done");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}6.向文件中添加新的内容
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class AppendToFileExample {
    private static final String FILENAME = "E:\\test\\filename.txt";
    public static void main(String[] args) {
        BufferedWriter bw = null;
        FileWriter fw = null;
        try {
            String data = " This is new content";
            File file = new File(FILENAME);
            // if file doesnt exists, then create it
            if (!file.exists()) {
                file.createNewFile();
            }
            // true = append file
            fw = new FileWriter(file.getAbsoluteFile(), true);
            bw = new BufferedWriter(fw);
            bw.write(data);
            System.out.println("Done");
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (bw != null)
                    bw.close();
                if (fw != null)
                    fw.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
    }
}7.删除文件
mport java.io.File;
public class DeleteFileExample
{
    public static void main(String[] args)
    {
        try{
            File file = new File("c:\\logfile20100131.log");
            if(file.delete()){
                System.out.println(file.getName() + " is deleted!");
            }else{
                System.out.println("Delete operation is failed.");
            }
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}8.删除指定格式的所有文件
import java.io.*;
public class FileChecker {
   private static final String FILE_DIR = "c:\\folder";
   private static final String FILE_TEXT_EXT = ".txt";
   public static void main(String args[]) {
    new FileChecker().deleteFile(FILE_DIR,FILE_TEXT_EXT);
   }
   public void deleteFile(String folder, String ext){
     GenericExtFilter filter = new GenericExtFilter(ext);
     File dir = new File(folder);
     //list out all the file name with .txt extension
     String[] list = dir.list(filter);
     if (list.length == 0) return;
     File fileDelete;
     for (String file : list){
    String temp = new StringBuffer(FILE_DIR)
                      .append(File.separator)
                      .append(file).toString();
        fileDelete = new File(temp);
        boolean isdeleted = fileDelete.delete();
        System.out.println("file : " + temp + " is deleted : " + isdeleted);
     }
   }
   //inner class, generic extension filter
   public class GenericExtFilter implements FilenameFilter {
       private String ext;
       public GenericExtFilter(String ext) {
         this.ext = ext;
       }
       public boolean accept(File dir, String name) {
         return (name.endsWith(ext));
       }
    }
}9.查找以某种格式的所有文件
import java.io.*;
public class FindCertainExtension {
    private static final String FILE_DIR = "c:\\folder";
    private static final String FILE_TEXT_EXT = ".jpg";
    public static void main(String args[]) {
        new FindCertainExtension().listFile(FILE_DIR, FILE_TEXT_EXT);
    }
    public void listFile(String folder, String ext) {
        GenericExtFilter filter = new GenericExtFilter(ext);
        File dir = new File(folder);
        if(dir.isDirectory()==false){
            System.out.println("Directory does not exists : " + FILE_DIR);
            return;
        }
        // list out all the file name and filter by the extension
        String[] list = dir.list(filter);
        if (list.length == 0) {
            System.out.println("no files end with : " + ext);
            return;
        }
        for (String file : list) {
            String temp = new StringBuffer(FILE_DIR).append(File.separator)
                    .append(file).toString();
            System.out.println("file : " + temp);
        }
    }
    // inner class, generic extension filter
    public class GenericExtFilter implements FilenameFilter {
        private String ext;
        public GenericExtFilter(String ext) {
            this.ext = ext;
        }
        public boolean accept(File dir, String name) {
            return (name.endsWith(ext));
        }
    }
}10.修改文件名
import java.io.File;
public class RenameFileExample
{
    public static void main(String[] args)
    {
        File oldfile =new File("oldfile.txt");
        File newfile =new File("newfile.txt");
        if(oldfile.renameTo(newfile)){
            System.out.println("Rename succesful");
        }else{
            System.out.println("Rename failed");
        }
    }
}11.复制文件内容
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class CopyFileExample
{
    public static void main(String[] args)
    {
        InputStream inStream = null;
    OutputStream outStream = null;
        try{
            File afile =new File("Afile.txt");
            File bfile =new File("Bfile.txt");
            inStream = new FileInputStream(afile);
            outStream = new FileOutputStream(bfile);
            byte[] buffer = new byte[1024];
            int length;
            //copy the file content in bytes
            while ((length = inStream.read(buffer)) > 0){
                outStream.write(buffer, 0, length);
            }
            inStream.close();
            outStream.close();
            System.out.println("File is copied successful!");
        }catch(IOException e){
            e.printStackTrace();
        }
    }
}12.将一个文件移到另一个目录
import java.io.File;
public class MoveFileExample
{
    public static void main(String[] args)
    {
        try{
           File afile =new File("C:\\folderA\\Afile.txt");
           if(afile.renameTo(new File("C:\\folderB\\" + afile.getName()))){
            System.out.println("File is moved successful!");
           }else{
            System.out.println("File is failed to move!");
           }
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}
13.创建文件是添加日期
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class GetFileCreationDateExample
{
    public static void main(String[] args)
    {
        try{
            Process proc =
               Runtime.getRuntime().exec("cmd /c dir c:\\logfile.log /tc");
            BufferedReader br =
               new BufferedReader(
                  new InputStreamReader(proc.getInputStream()));
            String data ="";
            //it‘s quite stupid but work
            for(int i=0; i<6; i++){
                data = br.readLine();
            }
            System.out.println("Extracted value : " + data);
            //split by space
            StringTokenizer st = new StringTokenizer(data);
            String date = st.nextToken();//Get date
            String time = st.nextToken();//Get time
            System.out.println("Creation Date  : " + date);
            System.out.println("Creation Time  : " + time);
        }catch(IOException e){
            e.printStackTrace();
        }
    }
}14.获取文件被修改的日期
import java.io.File;
import java.text.SimpleDateFormat;
public class GetFileLastModifiedExample
{
    public static void main(String[] args)
    {
    File file = new File("c:\\logfile.log");
    System.out.println("Before Format : " + file.lastModified());
    SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
    System.out.println("After Format : " + sdf.format(file.lastModified()));
    }
}15.修改文件日期
import java.io.File;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ChangeFileLastModifiedExample
{
    public static void main(String[] args)
    {
        try{
            File file = new File("C:\\logfile.log");
            //print the original last modified date
            SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
            System.out.println("Original Last Modified Date : "
                    + sdf.format(file.lastModified()));
            //set this date
            String newLastModified = "01/31/1998";
            //need convert the above date to milliseconds in long value
            Date newDate = sdf.parse(newLastModified);
            file.setLastModified(newDate.getTime());
            //print the latest last modified date
            System.out.println("Lastest Last Modified Date : "
                    + sdf.format(file.lastModified()));
        }catch(ParseException e){
            e.printStackTrace();
        }
    }
}16.设置文件只能读
import java.io.File;
import java.io.IOException;
public class FileReadAttribute
{
    public static void main(String[] args) throws IOException
    {
        File file = new File("c:/file.txt");
        //mark this file as read only, since jdk 1.2
        file.setReadOnly();
        if(file.canWrite()){
             System.out.println("This file is writable");
        }else{
             System.out.println("This file is read only");
        }
        //revert the operation, mark this file as writable, since jdk 1.6
        file.setWritable(true);
        if(file.canWrite()){
             System.out.println("This file is writable");
        }else{
             System.out.println("This file is read only");
        }
    }
}17.获取文件大小
import java.io.File;
public class FileSizeExample
{
    public static void main(String[] args)
    {
        File file =new File("c:\\java_xml_logo.jpg");
        if(file.exists()){
            double bytes = file.length();
            double kilobytes = (bytes / 1024);
            double megabytes = (kilobytes / 1024);
            double gigabytes = (megabytes / 1024);
            double terabytes = (gigabytes / 1024);
            double petabytes = (terabytes / 1024);
            double exabytes = (petabytes / 1024);
            double zettabytes = (exabytes / 1024);
            double yottabytes = (zettabytes / 1024);
            System.out.println("bytes : " + bytes);
            System.out.println("kilobytes : " + kilobytes);
            System.out.println("megabytes : " + megabytes);
            System.out.println("gigabytes : " + gigabytes);
            System.out.println("terabytes : " + terabytes);
            System.out.println("petabytes : " + petabytes);
            System.out.println("exabytes : " + exabytes);
            System.out.println("zettabytes : " + zettabytes);
            System.out.println("yottabytes : " + yottabytes);
        }else{
             System.out.println("File does not exists!");
        }
    }
}18.获取文件路径
import java.io.File;
import java.io.IOException;
public class AbsoluteFilePathExample
{
    public static void main(String[] args)
    {
        try{
            File temp = File.createTempFile("i-am-a-temp-file", ".tmp" );
            String absolutePath = temp.getAbsolutePath();
            System.out.println("File path : " + absolutePath);
            String filePath = absolutePath.
                     substring(0,absolutePath.lastIndexOf(File.separator));
            System.out.println("File path : " + filePath);
        }catch(IOException e){
            e.printStackTrace();
        }
    }
}19.获取文件的总行数
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
public class LineNumberReaderExample
{
    public static void main(String[] args)
    {
        try{
            File file =new File("c:\\ihave10lines.txt");
            if(file.exists()){
                FileReader fr = new FileReader(file);
                LineNumberReader lnr = new LineNumberReader(fr);
                int linenumber = 0;
                    while (lnr.readLine() != null){
                    linenumber++;
                    }
                    System.out.println("Total number of lines : " + linenumber);
                    lnr.close();
            }else{
                 System.out.println("File does not exists!");
            }
        }catch(IOException e){
            e.printStackTrace();
        }
    }
}
20.检查文件是否存在
import java.io.*;
public class FileChecker {
  public static void main(String args[]) {
      File f = new File("c:\\mkyong.txt");
      if(f.exists()){
          System.out.println("File existed");
      }else{
          System.out.println("File not found!");
      }
  }
}21.检查 文件是否隐藏
import java.io.File;
import java.io.IOException;
public class FileHidden
{
    public static void main(String[] args) throws IOException
    {
        File file = new File("c:/hidden-file.txt");
        if(file.isHidden()){
            System.out.println("This file is hidden");
        }else{
            System.out.println("This file is not hidden");
        }
    }
}22.读取文件为UTF-8的数据
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
public class test {
    public static void main(String[] args){
    try {
        File fileDir = new File("c:\\temp\\test.txt");
        BufferedReader in = new BufferedReader(
           new InputStreamReader(
                      new FileInputStream(fileDir), "UTF8"));
        String str;
        while ((str = in.readLine()) != null) {
            System.out.println(str);
        }
                in.close();
        }
        catch (UnsupportedEncodingException e)
        {
            System.out.println(e.getMessage());
        }
        catch (IOException e)
        {
            System.out.println(e.getMessage());
        }
        catch (Exception e)
        {
            System.out.println(e.getMessage());
        }
    }
}23.向文件中写入UTF-8的数据
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
public class test {
    public static void main(String[] args){
      try {
        File fileDir = new File("c:\\temp\\test.txt");
        Writer out = new BufferedWriter(new OutputStreamWriter(
            new FileOutputStream(fileDir), "UTF8"));
        out.append("Website UTF-8").append("\r\n");
        out.append("?? UTF-8").append("\r\n");
        out.append("??????? UTF-8").append("\r\n");
        out.flush();
        out.close();
        } 
       catch (UnsupportedEncodingException e) 
       {
        System.out.println(e.getMessage());
       } 
       catch (IOException e) 
       {
        System.out.println(e.getMessage());
        }
       catch (Exception e)
       {
        System.out.println(e.getMessage());
       } 
    }   
}24.将 文本内容复制给一个变量
import java.io.DataInputStream;
import java.io.FileInputStream;
public class App{
    public static void main (String args[]) {
    try{
             DataInputStream dis =
            new DataInputStream (
                 new FileInputStream ("c:\\logging.log"));
         byte[] datainBytes = new byte[dis.available()];
         dis.readFully(datainBytes);
         dis.close();
         String content = new String(datainBytes, 0, datainBytes.length);
         System.out.println(content);
    }catch(Exception ex){
        ex.printStackTrace();
    }
  }
}25.生成文件校验值
import java.io.FileInputStream;
import java.security.MessageDigest;
public class TestCheckSum {
  public static void main(String args[]) throws Exception {
    String datafile = "c:\\INSTLOG.TXT";
    MessageDigest md = MessageDigest.getInstance("SHA1");
    FileInputStream fis = new FileInputStream(datafile);
    byte[] dataBytes = new byte[1024];
    int nread = 0;
    while ((nread = fis.read(dataBytes)) != -1) {
      md.update(dataBytes, 0, nread);
    };
    byte[] mdbytes = md.digest();
    //convert the byte to hex format
    StringBuffer sb = new StringBuffer("");
    for (int i = 0; i < mdbytes.length; i++) {
        sb.append(Integer.toString((mdbytes[i] & 0xff) + 0x100, 16).substring(1));
    }
    System.out.println("Digest(in hex format):: " + sb.toString());
  }
}26.将文件转换成字节数组
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class FileToArrayOfBytes {
    public static void main(String[] args) {
        try {
            // convert file to byte[]
            byte[] bFile = readBytesFromFile("C:\\temp\\testing1.txt");
            //java nio
            //byte[] bFile = Files.readAllBytes(new File("C:\\temp\\testing1.txt").toPath());
            //byte[] bFile = Files.readAllBytes(Paths.get("C:\\temp\\testing1.txt"));
            // save byte[] into a file
            Path path = Paths.get("C:\temp\\test2.txt");
            Files.write(path, bFile);
            System.out.println("Done");
            //Print bytes[]
            for (int i = 0; i < bFile.length; i++) {
                System.out.print((char) bFile[i]);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    private static byte[] readBytesFromFile(String filePath) {
        FileInputStream fileInputStream = null;
        byte[] bytesArray = null;
        try {
            File file = new File(filePath);
            bytesArray = new byte[(int) file.length()];
            //read file into bytes[]
            fileInputStream = new FileInputStream(file);
            fileInputStream.read(bytesArray);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fileInputStream != null) {
                try {
                    fileInputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return bytesArray;
    }
}27.文件保存字节数组
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class ArrayOfBytesToFile {
    private static final String UPLOAD_FOLDER = "C:\\temp\\";
    public static void main(String[] args) {
        FileInputStream fileInputStream = null;
        try {
            File file = new File("C:\\temp\\testing1.txt");
            byte[] bFile = new byte[(int) file.length()];
            //read file into bytes[]
            fileInputStream = new FileInputStream(file);
            fileInputStream.read(bFile);
            //save bytes[] into a file
            writeBytesToFile(bFile, UPLOAD_FOLDER + "test1.txt");
            writeBytesToFileClassic(bFile, UPLOAD_FOLDER + "test2.txt");
            writeBytesToFileNio(bFile, UPLOAD_FOLDER + "test3.txt");
            System.out.println("Done");
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fileInputStream != null) {
                try {
                    fileInputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    //Classic, < JDK7
    private static void writeBytesToFileClassic(byte[] bFile, String fileDest) {
        FileOutputStream fileOuputStream = null;
        try {
            fileOuputStream = new FileOutputStream(fileDest);
            fileOuputStream.write(bFile);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fileOuputStream != null) {
                try {
                    fileOuputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    //Since JDK 7 - try resources
    private static void writeBytesToFile(byte[] bFile, String fileDest) {
        try (FileOutputStream fileOuputStream = new FileOutputStream(fileDest)) {
            fileOuputStream.write(bFile);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    //Since JDK 7, NIO
    private static void writeBytesToFileNio(byte[] bFile, String fileDest) {
        try {
            Path path = Paths.get(fileDest);
            Files.write(path, bFile);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}28.将字符串转换成InputStream
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class StringToInputStreamExample {
    public static void main(String[] args) throws IOException {
    String str = "This is a String ~ GoGoGo";
    // convert String into InputStream
    InputStream is = new ByteArrayInputStream(str.getBytes());
    // read it with BufferedReader
    BufferedReader br = new BufferedReader(new InputStreamReader(is));
    String line;
    while ((line = br.readLine()) != null) {
        System.out.println(line);
    }
    br.close();
   }
}29.将InputStream转换为字符串
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class InputStreamToStringExample {
    public static void main(String[] args) throws IOException {
        // intilize an InputStream
        InputStream is =
                     new ByteArrayInputStream("file content..blah blah".getBytes());
        String result = getStringFromInputStream(is);
        System.out.println(result);
        System.out.println("Done");
    }
    // convert InputStream to String
    private static String getStringFromInputStream(InputStream is) {
        BufferedReader br = null;
        StringBuilder sb = new StringBuilder();
        String line;
        try {
            br = new BufferedReader(new InputStreamReader(is));
            while ((line = br.readLine()) != null) {
                sb.append(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (br != null) {
                try {
                    br.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return sb.toString();
    }
}30.将文件转换为十六进制
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream;
public class File2Hex
{
    public static void convertToHex(PrintStream out, File file) throws IOException {
    InputStream is = new FileInputStream(file);
    int bytesCounter =0;
    int value = 0;
    StringBuilder sbHex = new StringBuilder();
    StringBuilder sbText = new StringBuilder();
    StringBuilder sbResult = new StringBuilder();
    while ((value = is.read()) != -1) {
        //convert to hex value with "X" formatter
            sbHex.append(String.format("%02X ", value));
        //If the chracater is not convertable, just print a dot symbol "."
        if (!Character.isISOControl(value)) {
            sbText.append((char)value);
        }else {
            sbText.append(".");
        }
        //if 16 bytes are read, reset the counter,
            //clear the StringBuilder for formatting purpose only.
        if(bytesCounter==15){
            sbResult.append(sbHex).append("      ").append(sbText).append("\n");
            sbHex.setLength(0);
            sbText.setLength(0);
            bytesCounter=0;
        }else{
            bytesCounter++;
        }
       }
    //if still got content
    if(bytesCounter!=0){
         //add spaces more formatting purpose only
        for(; bytesCounter<16; bytesCounter++){
        //1 character 3 spaces
        sbHex.append("   ");
        }
        sbResult.append(sbHex).append("      ").append(sbText).append("\n");
        }
        out.print(sbResult);
        is.close();
  }
   public static void main(String[] args) throws IOException
   {
        //display output to console
        convertToHex(System.out, new File("c:/file.txt"));
        //write the output into a file
        convertToHex(new PrintStream("c:/file.hex"), new File("c:/file.txt"));
    }
}31.File如何得到空闲磁盘空间
import java.io.File;
public class DiskSpaceDetail
{
    public static void main(String[] args)
    {
        File file = new File("c:");
        long totalSpace = file.getTotalSpace(); //total disk space in bytes.
        long usableSpace = file.getUsableSpace(); ///unallocated / free disk space in bytes.
        long freeSpace = file.getFreeSpace(); //unallocated / free disk space in bytes.
        System.out.println(" === Partition Detail ===");
        System.out.println(" === bytes ===");
        System.out.println("Total size : " + totalSpace + " bytes");
        System.out.println("Space free : " + usableSpace + " bytes");
        System.out.println("Space free : " + freeSpace + " bytes");
        System.out.println(" === mega bytes ===");
        System.out.println("Total size : " + totalSpace /1024 /1024 + " mb");
        System.out.println("Space free : " + usableSpace /1024 /1024 + " mb");
        System.out.println("Space free : " + freeSpace /1024 /1024 + " mb");
    }
}原文:https://www.cnblogs.com/mashuqi/p/10445876.html