JAVA 输入输出程序开发
Posted fitzroy343
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA 输入输出程序开发相关的知识,希望对你有一定的参考价值。
参考:
java File类list()和listFile()的方法区别
import java.io.*; public class HandInput{ //生成文件路径 //private static String path = "Documents/code/java 输入输出程序开发"; //文件路径+名称 private static String filenameTemp; /** * 创建文件 * @param fileName 文件名称 * @return 是否创建成功,成功则返回true */ public static boolean createFile(String fileName){ Boolean bool = false; filenameTemp = fileName+".txt"; //文件路径+名称+文件类型 ? File file = new File(filenameTemp); try{ //如果文件不存在,则创建新的文件 if(!file.exists()){ file.createNewFile(); bool = true; System.out.println("success create file, the file is "+filenameTemp); //创建InputStreamReader对象,用来读取字符流 //缓冲指定 字符流的输入 //FileInputStream->InputStreamReader->BufferedReader BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter buf2 = new BufferedWriter(new FileWriter(filenameTemp)); String str = buf.readLine(); while(!str.equals("end#")){ buf2.write(str); buf2.newLine(); str = buf.readLine(); } buf2.flush(); //刷新该流的缓冲,即将该流输出到目的 buf2.close(); buf.close(); } else { System.out.println("file is exist"); } } catch(Exception e) { e.printStackTrace(); } return bool; } public static void main(String[] args){ createFile("f"); } }
import java.io.*; public class WordCount { public static void main(String[] args) throws IOException { File file = new File("article.txt"); //isDirectory()是检查一个对象是否是文件夹 if(!file.exists() || file.isDirectory()){ throw new FileNotFoundException(); } BufferedReader br = new BufferedReader(new FileReader(file)); int count=0; String tmp = null; tmp = br.readLine(); while(tmp!=null){ tmp = tmp.toLowerCase(); System.out.println(tmp); while(tmp.indexOf("hello")!=-1){ //调用String类的indexOf(String str)方法,返回第一个相同字符串出现的下标 count++; tmp = tmp.substring(tmp.indexOf("hello")+5); //调用String类的substring(int beginIndex)方法,获得第一个相同字符串出现后的字符串 } tmp = br.readLine(); } System.out.println("单词hello在文章article中出现的次数为: "+count); } }
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; public class CodeCount { static List<File> javalsf = new ArrayList<File>(); static List<File> lsf = new ArrayList<File>(); static int count =0; public static void main(String[] args) throws Exception{ File file = new File("/Users/fitzroy/Documents/code/汇添富移动互联股票(000697)基金收益程序/src"); getJavaFiles(file); System.out.println("有"+javalsf.size()+"个.java源文件"); getLinesOfCode(javalsf); } public static List<File> getJavaFiles(File file){ if(!file.exists()){ System.out.println("file not exists"); } else{ if(file.isFile()){ //是文件 String filename = file.getName(); if(filename.substring(filename.lastIndexOf(".")+1).equals("java")){ //后缀为.java的文件 javalsf.add(file); } } else{ //是文件夹 File[] filelist = file.listFiles(); //获取文件夹中的File for(File files : filelist){ getJavaFiles(files); } } } return javalsf; } public static int getLinesOfCode(List<File> javaFiles) { int num = 0; try { for (File file : javaFiles) { System.out.println("File: " + file.getName()); InputStreamReader is = new InputStreamReader(new FileInputStream(file)); BufferedReader br = new BufferedReader(is); String str = null; str = br.readLine(); while (str != null) { str = str.trim(); if (!str.startsWith("//") && !str.equals("")) { num++; } str = br.readLine(); } count += num; System.out.println("lines of code: " + num); System.out.println("-------------------"); br.close(); } } catch (Exception e) { e.printStackTrace(); } System.out.println("total: " + count); return count; } }
以上是关于JAVA 输入输出程序开发的主要内容,如果未能解决你的问题,请参考以下文章