标签:
本篇随便主要是提供java题库,方便于日后快速查询:
着重提供思路和代码,力求简洁,而且给出分析,和结果.
\
IO流实列:
缓冲流键盘输入,与输出
1 BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in)); 2 3 BufferedWriter bufw=new BufferedWriter(new FileWriter("D:\\fd")); 4 BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream("readin1.txt"),"UTF-8")); 5 6 String line=null; 7 while((line=bufr.readLine())!=null){ 8 if(line.equals("end")){ 9 break; 10 } 11 bufw.write(line.toUpperCase()); 12 bufw.newLine(); 13 bufw.flush(); 14 } 15 16 bufw.close(); 17 bufr.close();
缓冲流复制
1 BufferedInputStream bufi=new BufferedInputStream(new FileInputStream("D:\\aa")); 2 BufferedOutputStream bufo=new BufferedOutputStream(new FileOutputStream("C:\\bb")); 3 4 int b=0; 5 while((b=bufi.read())!=-1){ 6 bufo.write(b); 7 } 8 9 bufi.close(); 10 bufo.close();
遍历寻找后缀为.java的文件
1 File file=new File("D:\\xiti\\exam\\src\\com"); 2 String[] fileName=file.list(new FilenameFilter(){ 3 4 @Override 5 public boolean accept(File dir, String name) { 6 // TODO Auto-generated method stub 7 return name.endsWith(".java"); 8 } 9 }); 10 11 for(String s:fileName){ 12 System.out.println(s); 13 } 14 }
遍历文件中的".java"复制到另外一个文件中继而变".txt"
1 ArrayList<String> list=new ArrayList<String>(); 2 File in=new File("D:\\pp"); 3 4 File out=new File("D\\kk"); 5 // 假如没有则创建一个文件 6 if(!(out.exists())){ 7 out.mkdirs(); 8 } 9 // 将.java的文件名放入集合里面 10 FileToList(in,list); 11 12 // 将集合内的文件名对应的文件存入指定的文件中out中 13 for(String fileName:list){ 14 15 FileOutlist(in, out,fileName); 16 } 17 18 } 19 20 private static void FileOutlist(File in, File out, String fileName) throws Exception{ 21 22 BufferedReader bufr=new BufferedReader(new FileReader(new File(in,fileName))); 23 BufferedWriter bufw= 24 new BufferedWriter(new FileWriter(new File(out,fileName.replace(".java", ".txt")))); 25 26 String line=null; 27 while((line=bufr.readLine())!=null){ 28 bufw.write(line); 29 bufw.newLine(); 30 bufw.flush(); 31 } 32 bufr.close(); 33 bufw.close(); 34 35 } 36 37 // 将集合内的文件名对应的文件存入指定的文件中out中 38 39 40 private static void FileToList(File in, ArrayList<String> list) { 41 // TODO Auto-generated method stub 42 File[] dir=in.listFiles(); 43 for(File f:dir){ 44 list.add(f.getName()); 45 } 46 47 }
//有层次的打印
1 //有层次书书某一文件的文件名 2 public class FileLevalDemo { 3 public static void main(String[] args){ 4 File dir=new File("D:\\"); 5 getLevalList(dir,0); 6 7 } 8 /* 9 * @dir代表要遍历的文件 10 * @代表所在层级,一开始在0级 11 * 12 */ 13 private static void getLevalList(File dir, int level) { 14 // TODO Auto-generated method stub 15 System.out.println(getLevals(level)+dir); 16 level++;//使用level来确定在哪一级 17 18 File[] file=dir.listFiles(); 19 20 for(File ff:file){ 21 if(ff.isDirectory()){//判断是否为目录 22 23 getLevalList(ff,level);//是的话需要递归 24 } 25 else 26 System.out.println(getLevals(level)+file);//非目录则打印 27 } 28 29 30 } 31 32 // 增加层次感用的 33 private static String getLevals(int level) { 34 StringBuilder sb=new StringBuilder(); 35 36 sb.append("|--"); 37 38 for(int i=level;i>0;i--){//注意这里for循环的用法 39 sb.append("--"); 40 } 41 return sb.toString(); 42 } 43 }
1 /* 2 将一个指定目录下的java文件的绝对路径,存储到一个文本文件中。建立一个java文件列表的文件。 3 思路: 4 1、对指定的目录进行递归。 5 2、获取递归过程所有的java文件的路径。 6 3、将这些路径存储到集合中。 7 4、将集合中的数据写入到一个文件中。 8 */ 9 10 import java.util.*; 11 import java.io.*; 12 13 public class FoundDemo { 14 public static void main(String[] args) throws Exception{ 15 16 File dir=new File("D:\\pp"); 17 18 List<File> list=new ArrayList<File>(); 19 // 将指定的文件名存入集合中 20 fileToList(dir,list); 21 22 // 指定文件存入数据 23 24 File ff=new File(dir,"pp.txt"); 25 26 writTOfile(ff,list); 27 28 } 29 30 private static void writTOfile(File ff, List<File> list)throws Exception { 31 BufferedWriter bufr=new BufferedWriter(new FileWriter(ff)); 32 33 for(File fs:list){ 34 bufr.write(fs.getAbsolutePath()); 35 bufr.newLine(); 36 bufr.flush(); 37 } 38 bufr.close(); 39 40 } 41 42 private static void fileToList(File dir, List<File> list) { 43 File[] file=dir.listFiles(); 44 45 for(File f:file){ 46 if(f.isDirectory()){ 47 list.add(f.getAbsoluteFile()); 48 fileToList(f,list); 49 } 50 else if(f.getName().endsWith(".java")){ 51 52 list.add(f); 53 54 } 55 56 } 57 58 59 } 60 }
多层复制:
1 //多层复制 2 private static void writTOfile(File ff, List<File> list)throws Exception { 3 BufferedInputStream bufr=null; 4 BufferedWriter bufw=new BufferedWriter(new FileWriter(ff)); 5 6 for(File fs:list){ 7 bufr=new BufferedInputStream(new FileInputStream(fs)); 8 int b=0; 9 while((b=bufr.read())!=-1){ 10 bufw.write(b); 11 12 } 13 } 14 bufr.close(); 15 bufw.close(); 16 }
反射实例:
1 public class fanSheDemo { 2 3 public static void main(String[] args) throws Exception{ 4 // A a=new A(); 5 // a.a("pp"); 6 A aa=(A)Class.forName("CT_heima.A").newInstance(); 7 aa.a("aa"); 8 } 9 } 10 11 class A{ 12 13 public static void a(String s){ 14 System.out.println(s); 15 } 16 }
标签:
原文地址:http://www.cnblogs.com/shuiyinmeizi/p/4224556.html