文件处理
import java.io.*; public class Denglu { public static void main(String[] args) throws IOException { try { InputStreamReader isr=new InputStreamReader(System.in); BufferedReader inp=new BufferedReader(isr);//进行字节字符转换 用于键盘输入 String sdir="C:\\Users\\888888\\Desktop\\05.StreamAndFileSourceCode\\File";//文件 int count=0;//计算文件数目 File fdir1=new File(sdir);//创建文件夹 if(fdir1.exists()&&fdir1.isDirectory()) { System.out.println(sdir+"存在"); String[] f1=fdir1.list();//列表 下面区分list()和listFile() /*File f=new File("c:\\"); String[] f1=f.list(); File[] f2=f.listFiles(); for(int i=0;i<f1.length;i++) { System.out.println(f1[i]); count++; } System.out.println("一共有"+count+"文件"); //在目录下添加文件 名字jiahui File fdir2=new File("C:\\\\Users\\\\888888\\\\Desktop\\\\05.StreamAndFileSourceCode\\\\File\\jiahui"); if(!fdir2.exists()) { fdir2.mkdir();//如果不存在就创建 肯定不存在你指定的 } count=0; System.out.println("建立新的文件夹后: "); for(int i=0;i<f1.length;i++) { System.out.println(f1[i]);//再一次输出目录下的问价及总数 count++; } System.out.println("一共有"+count+"文件"); } System.out.println("请输入一个文件名字:");//对其中一个文件属性访问 String sfile=inp.readLine(); File ffile=new File(fdir1,sfile);//用一个已经存在代表某磁盘文件夹的fdir1对象作为文件夹 以sfile作为文件名字 if (ffile.isFile()) { System.out.println(ffile.getName()); System.out.println(ffile.getPath()); System.out.println(ffile.length()); } inp.close(); } catch(IOException e) { System.out.println(e.toString()); } } }
2
package wenjianyuliu; import java.io.File; import java.io.InputStream; import java.io.OutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; //编写一个文件加解密程序,通过命令行完成加解密工作 public class FileCode { private static final int numOfEncAndDec=0x99;//加密解密密钥 private static int dataOfFile=0;//文件字节内容 public static void main(String[] args) { File srcFile=new File("E:\\新建文件夹\\poem.txt");//初始化文件 File encFile=new File("E:\\新建文件夹\\poem1.txt"); //加密文件 File decFile=new File("E:\\新建文件夹\\poem2.txt"); //解密文件 try { //EncFile(srcFile,encFile); //加密操作 //DecFile(encFile,decFile);//解密操作 EncFile(srcFile,decFile); //加密操作 DecFile(decFile,encFile); }catch(Exception e) { e.printStackTrace(); } } private static void EncFile(File srcFile,File encFile)throws Exception{ if(!srcFile.exists()) { System.out.println("source file not exixt"); } if(!encFile.exists()) { System.out.println("encrypt file created"); encFile.createNewFile();//若无加密文件,新建一个加密文件 } InputStream fis=new FileInputStream(srcFile); OutputStream fos=new FileOutputStream(encFile); while((dataOfFile=fis.read())>-1) {//当读到文件内容时 fos.write(dataOfFile^numOfEncAndDec);//将读出的内容加密后写入 } fis.close(); fos.flush(); fos.close(); } private static void DecFile(File encFile,File decFile)throws Exception{ if(!encFile.exists()) { System.out.println("encrypt file not exixt"); } if(!decFile.exists()) { System.out.println("decrypt file created"); decFile.createNewFile(); } InputStream fis=new FileInputStream(encFile); OutputStream fos=new FileOutputStream(decFile); while((dataOfFile=fis.read())>-1) { fos.write(dataOfFile^numOfEncAndDec); } fis.close(); fos.flush(); fos.close(); } }
3
import java.io.*; public class BeforeBreakFile { public static void main(String args[]) { try { FileReader read = new FileReader("D:/text.log"); BufferedReader br = new BufferedReader(read); String row; int rownum = 1; while ((row = br.readLine()) != null) { rownum ++; } System.out.println("rownum="+rownum); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }