您的位置:首页 > 编程语言 > Java开发

Java的I/O流

2016-07-28 00:10 411 查看
现在动手写写Java的微程序。光看得懂书的其实是不会写的。


Java输出某文件目录下的所有文件

1. 队列输出某文件目录下的所有文件

import java.io.File;
import java.util.LinkedList;

public class test {
public static void main(String[] args) {
long fileCount = 0;
LinkedList<File> list = new LinkedList<File>();
File file = new File(".");
//  if (file == null) System.out.println("该文件不存在");
//计数中除去根目录
if (file.length() == 0)
System.out.println("空文件(夹)");
if (file.isDirectory()) {
for (File tmpFile : file.listFiles()){
list.addFirst(tmpFile);
}
}
//  //计数中包括根目录
//  list.add(file);
while(!list.isEmpty()) {
++ fileCount;
file = list.removeFirst();
if (file.isDirectory()) {
System.out.println
(file.getAbsolutePath()+" DIR");
for (File tmpFile : file.listFiles()){
list.addFirst(tmpFile);
}
}else {
System.out.println
(file.getAbsolutePath()+" "+file.length());
}
}
System.out.printf("Totle:%d\n",fileCount);
}
}


2. 递归法:

import java.io.File;

public class test2 {
public static void main(String[] args) {
File file = new File(".");
ShowFile(file);
}
public static void ShowFile(File mainFile) {
//先深入再操作(输出),避免加入根目录
if (!mainFile.isDirectory()) {
return;
}
for (File subFile : mainFile.listFiles()) {
if (subFile.isDirectory()) {
System.out.println
(subFile.getAbsolutePath()+" DIR");
ShowFile(subFile);
}else if (subFile.isFile()){
System.out.println
(subFile.getAbsolutePath()+" "+subFile.length());
}
}
}
}


Java从键盘读入int

参照http://www.weixueyuan.net/view/6046.html的说法:从键盘读入的数据是字符的字节码表示方式(?),如输入 26,只代表 2 和 6 两个字符的字节数据,而不是代表整数 26 的字节码。因此,想要从键盘得到整数需要先读取字符串,再利用其他方法将字符串转化为整数。

我暂时的做法:

//   1.通过Reader
//   BufferedReader br = new BufferedReader
//           (new InputStreamReader(System.in));
//   int index = Integer.parseInt(br.readLine());
//   2.利用Scanner
//   Scanner scn = new Scanner(System.in);
//   int index = scn.nextInt();
System.out.println(index);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java io