「javafile读写」JAVA 读写文件

博主:adminadmin 2023-01-22 04:48:07 308

今天给各位分享javafile读写的知识,其中也会对JAVA 读写文件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

Java中对文件进行读写操作的基本类是什么?

Java.io包中包括许多类提供许多有关文件的各个方面操作。

1 输入输出抽象基类InputStream/OutputStream ,实现文件内容操作的基本功能函数read()、 write()、close()、skip()等;一般都是创建出其派生类对象(完成指定的特殊功能)来实现文件读写。在文件读写的编程过程中主要应该注意异常处理的技术。

2 FileInputStream/FileOutputStream:

用于本地文件读写(二进制格式读写并且是顺序读写,读和写要分别创建出不同的文件流对象);

本地文件读写编程的基本过程为:

① 生成文件流对象(对文件读操作时应该为FileInputStream类,而文件写应该为FileOutputStream类);

② 调用FileInputStream或FileOutputStream类中的功能函数如read()、write(int b)等)读写文件内容;

③ 关闭文件(close())。

3 PipedInputStream/PipedOutputStream:

用于管道输入输出(将一个程序或一个线程的输出结果直接连接到另一个程序或一个线程的输入端口,实现两者数据直接传送。操作时需要连结);

4管道的连接:

方法之一是通过构造函数直接将某一个程序的输出作为另一个程序的输入,在定义对象时指明目标管道对象

PipedInputStream pInput=new PipedInputStream();

PipedOutputStream pOutput= new PipedOutputStream(pInput);

方法之二是利用双方类中的任一个成员函数 connect()相连接

PipedInputStream pInput=new PipedInputStream();

PipedOutputStream pOutput= new PipedOutputStream();

pinput.connect(pOutput);

5 管道的输入与输出:

输出管道对象调用write()成员函数输出数据(即向管道的输入端发送数据);而输入管道对象调用read()成员函数可以读起数据(即从输出管道中获得数据)。这主要是借助系统所提供的缓冲机制来实现的。

6随机文件读写:

RandomAccessFile类(它直接继承于Object类而非InputStream/OutputStream类),从而可以实现读写文件中任何位置中的数据(只需要改变文件的读写位置的指针)。

随机文件读写编程的基本过程为:

① 生成流对象并且指明读写类型;

② 移动读写位置;

③ 读写文件内容;

④ 关闭文件。

七里河团队答疑助人,希望我的回答对你有所帮助

Java文件读写

实用的模糊(通配符)文件查找程序

1 import java.io.File;

2 import java.util.regex.Matcher;

3 import java.util.regex.Pattern;

4 import java.util.ArrayList;

5

6 /** *//**

7 * pTitle: FileService /p

8* pDescription: 获取文件 /p

9* pCopyright: Copyright (c) 2007/p

10* pCompany: /p

11* @author not attributable

12* @version 1.0

13*/

14public class FileService {

15 public FileService() {

16 }

17

18 /** *//**

19 * 在本文件夹下查找

20 * @param s String 文件名

21 * @return File[] 找到的文件

22 */

23 public static File[] getFiles(String s)

24 {

25 return getFiles("./",s);

26 }

27

28 /** *//**

29 * 获取文件

30 * 可以根据正则表达式查找

31 * @param dir String 文件夹名称

32 * @param s String 查找文件名,可带*.?进行模糊查询

33 * @return File[] 找到的文件

34 */

35 public static File[] getFiles(String dir,String s) {

36 //开始的文件夹

37 File file = new File(dir);

38

39 s = s.replace('.', '#');

40 s = s.replaceAll("#", "\\\\.");

41 s = s.replace('*', '#');

42 s = s.replaceAll("#", ".*");

43 s = s.replace('?', '#');

44 s = s.replaceAll("#", ".?");

45 s = "^" + s + "$";

46

47 System.out.println(s);

48 Pattern p = Pattern.compile(s);

49 ArrayList list = filePattern(file, p);

50

51 File[] rtn = new File[list.size()];

52 list.toArray(rtn);

53 return rtn;

54 }

55

56 /** *//**

57 * @param file File 起始文件夹

58 * @param p Pattern 匹配类型

59 * @return ArrayList 其文件夹下的文件夹

60 */

61

62 private static ArrayList filePattern(File file, Pattern p) {

63 if (file == null) {

64 return null;

65 }

66 else if (file.isFile()) {

67 Matcher fMatcher = p.matcher(file.getName());

68 if (fMatcher.matches()) {

69 ArrayList list = new ArrayList();

70 list.add(file);

71 return list;

72 }

73 }

74 else if (file.isDirectory()) {

75 File[] files = file.listFiles();

76 if (files != null files.length 0) {

77 ArrayList list = new ArrayList();

78 for (int i = 0; i files.length; i++) {

79 ArrayList rlist = filePattern(files[i], p);

80 if (rlist != null) {

81 list.addAll(rlist);

82 }

83 }

84 return list;

85 }

86 }

87 return null;

88 }

89

90 /** *//**

91 * 测试

92 * @param args String[]

93 */

94 public static void main(String[] args) {

95 }

96}

JAVA的文件读写问题

当热身了~import java.io.BufferedWriter;

import java.io.FileWriter;

import java.util.*;/*编写一个程序,用于从键盘读入信息,并存储到磁盘文件中去。

要求:1. 以行的方式读入姓名和学号信息,例如:张三 20071215 (姓名和学号中间用一个空格隔开)

2. 循环读入,直到用户输入“quit”或者“QUIT”结束

3. 程序提示要用户输入一个文件名,例如:请输入存储到的文件名: userlist.txt

4. 在整个上述过程中,要做例外处理;如果文件创建成功,则给出提示信息。*/public class test9

{

public static void main(String[] args)

{

T1();

}

public static void T1()

{

FileWriter out ;

BufferedWriter bw;

String fileName = null;

String message = null;

Scanner scanner = new Scanner(System.in);

System.out.print("请输入存储到的文件名:");

fileName = scanner.next();

try

{

out = new FileWriter(fileName);

bw = new BufferedWriter(out);

System.out.print("\n文件创建成功!\n请输入姓名和学号信息:");

while( !(message = scanner.next()).equalsIgnoreCase("quit"))

{

bw.write(message);

bw.newLine();

}

bw.close();

out.close();

}

catch(Exception e)

{

System.out.println("文件创建失败!");

}

}} import java.util.Scanner;

import java.io.*;/*再编写一个程序,用于从上述存储的磁盘文件中读出信息,并显示在屏幕上。

要求:

1)文件名从键盘输入;

2)姓名和学号分开显示,例如屏幕显示如下信息:

文件 userlist.txt 中存储的姓名有: 张三 李四王五 ……

文件userlist.txt 中存储的学号有: 20061215 20061317 20061425 ….. */

public class test10

{

public static void main(String[] args)

{

T2();

}

public static void T2()

{

FileReader read;

BufferedReader in ;

Scanner scanner = new Scanner(System.in);

String fileName = null;

String message = null;

String[] buf = new String[2];

String[] name = new String[10];

String[] number = new String[10];

int pos1 = 0;

int pos2 = 0;

System.out.print("请输入要读取的文件名:");

fileName = scanner.next();

try

{

read = new FileReader(fileName);

in = new BufferedReader(read);

while((message = in.readLine()) != null)

{

buf = message.split(" ");

name[pos1++] = buf[0];

number[pos2++] = buf[1];

buf = new String[2];

}

}

catch(Exception e)

{

System.out.println("该文件不存在!");

}

System.out.println( "屏幕显示如下信息:");

System.out.print("文件"+fileName+"中存储的姓名有:");

for(int i = 0; name[i] != null;i++)

{

System.out.print(name[i]+" ");

}

System.out.print("\n文件"+fileName+"中存储的学号有:");

for(int i = 0; number[i] != null;i++)

{

System.out.print(number[i]+" ");

}

}}

Java中file类能够读写文件吗

可以,

InputStream is = new FileInputStream("Cmpp.cfg") ;

这样可以了

Java读写文件的几种方法

java读取配置文件的几种方法如下:

方式一:采用ServletContext读取,读取配置文件的realpath,然后通过文件流读取出来。因为是用ServletContext读取文件路径,所以配置文件可以放入在web-info的classes目录中,也可以在应用层级及web-info的目录中。文件存放位置具体在eclipse工程中的表现是:可以放在src下面,也可放在web-info及webroot下面等。因为是读取出路径后,用文件流进行读取的,所以可以读取任意的配置文件包括xml和properties。缺点:不能在servlet外面应用读取配置信息。

方式二:采用ResourceBundle类读取配置信息,

优点是:可以以完全限定类名的方式加载资源后,直接的读取出来,且可以在非Web应用中读取资源文件。缺点:只能加载类classes下面的资源文件且只能读取.properties文件。

关于javafile读写和JAVA 读写文件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。