天天看點

Accessing Files with the java.nio.file package

java.nio.file preferred packages for files

  • java.nio.FileXXX streams are deprecated

Provide a number of benefits over java.io

  • Better exception reporting
  • Greater scalabity - large file system
  • More file system feature support
  • Simplifies common task

常用class

Path

  • Used to locate a file system item
  • Can be a file or directory

Paths

  • Static Path factory methods
  • From string-based hierarchical path
  • From URI
Path p1 = Paths.get("\\documents\\data\\foo.txt");
Path p2 = Paths.get("\\documents","data","foo.txt");
           

Files

  • Static methods for interacting with files
  • Create, copy, delete, etc.
  • Open file streams
    • new BufferedReader
    • new BufferedWriter
    • new InputStream
    • new OutputStream
  • Convenience methods - read/write file contents
    • readAllLines
// Template - Reading Lines with BufferedReader
void readData() throws IOException{
try (BufferedReader br = Files.newBufferedReader(Paths.get("data.txt"))){
	String inValue;
	while((inValue = br.readLine()) != null){
		System.out.println(inValue);
	}
  }
}

// Read All Lines
void readThemAll() throws IOException{
	List<String> lines = Files.readAllLines(Paths.get("data.txt"));
	
	for(String line: lines)
		System.out.println(line);
}

           

繼續閱讀