net.mindview.util.TextFile 类 java编程思想
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了net.mindview.util.TextFile 类 java编程思想,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3477字,纯文字阅读大概需要5分钟。
内容图文
![net.mindview.util.TextFile 类 java编程思想](/upload/InfoBanner/zyjiaocheng/1153/1729103a2170401a9627040a2e63d30f.jpg)
转载参考 https://blog.csdn.net/kencolin/article/details/42246661
1 // : net/mindview/util/TextFile.java 2 // Static functions for reading and writing text files as 3 // a single string, and treating a file as an ArrayList. 4 package net.mindview.util; 5 import java.io.*; 6import java.util.*; 7 8publicclass TextFile extends ArrayList<String> { 9// Read a file as a single string: 10publicstatic String read(String fileName) { 11 StringBuilder sb = new StringBuilder(); 12try { 13 BufferedReader in= new BufferedReader(new FileReader( 14new File(fileName).getAbsoluteFile())); 15try { 16 String s; 17while((s = in.readLine()) != null) { 18 sb.append(s); 19 sb.append("\n");//???难道读出来的不包括这一个吗? 20 } 21 } finally { 22 in.close(); 23 } 24 } catch(IOException e) { 25thrownew RuntimeException(e); 26 } 27return sb.toString(); 28 } 29// Write a single file in one method call: 30publicstaticvoid write(String fileName, String text) { 31try { 32 PrintWriter out = new PrintWriter( 33new File(fileName).getAbsoluteFile()); 34try { 35 out.print(text); 36 } finally { 37 out.close(); 38 } 39 } catch(IOException e) { 40thrownew RuntimeException(e); 41 } 42 } 43// Read a file, split by any regular expression: 44public TextFile(String fileName, String splitter) { 45super(Arrays.asList(read(fileName).split(splitter))); 46// Regular expression split() often leaves an empty 47// String at the first position: 48if(get(0).equals("")) remove(0); 49 } 50// Normally read by lines: 51public TextFile(String fileName) { 52this(fileName, "\n"); 53 } 54publicvoid write(String fileName) { 55try { 56 PrintWriter out = new PrintWriter( 57new File(fileName).getAbsoluteFile()); 58try { 59for(String item : this) 60 out.println(item); 61 } finally { 62 out.close(); 63 } 64 } catch(IOException e) { 65thrownew RuntimeException(e); 66 } 67 } 68// Simple test: 69publicstaticvoid main(String[] args) { 70 String file = read("TextFile.java"); 71 write("test.txt", file); 72 TextFile text = new TextFile("test.txt"); 73 text.write("test2.txt"); 74// Break into unique sorted list of words: 75 TreeSet<String> words = new TreeSet<String>( 76new TextFile("TextFile.java", "\\W+")); 77// Display the capitalized words: 78 System.out.println(words.headSet("a")); 79 } 80 } /* Output: 81 [0, ArrayList, Arrays, Break, BufferedReader, BufferedWriter, Clean, Display, File, FileReader, FileWriter, IOException, Normally, Output, PrintWriter, Read, Regular, RuntimeException, Simple, Static, String, StringBuilder, System, TextFile, Tools, TreeSet, W, Write] 82*///:~
代码其实很简单,但是在Eclipse中运行就会报出一个java.lang.RuntimeException: java.io.FileNotFoundException:的问题,经过调试我发现问题的原因是程序中间有一个根据文件的抽象路径名 得到 它的绝对路径的一个过程,getAbsolutePath()这个函数执行后返回的绝对路径是这个工程所在的路径,而不是这个TextFile.class所在的路径。因此就会报错。
![技术分享图片](/upload/getfiles/default/2022/11/6/20221106102247579.jpg)
原文:https://www.cnblogs.com/kwaitfort/p/9123520.html
内容总结
以上是互联网集市为您收集整理的net.mindview.util.TextFile 类 java编程思想全部内容,希望文章能够帮你解决net.mindview.util.TextFile 类 java编程思想所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。