请教两道java编程题,关于IO包的。

1,用旧IO包中的类打开并读取一个文本文件,每次读取一行内容。将每行作为一个String输入放入String数组里面打印这个数组。
2,用nio包实现上题。

希望结果能够直接运行成功,不胜感激!如果直接通过,会有加分。

nio不能实现一行一行读,只能一块一块读或者一个字符一个字符读。
代码如下:

import java.io.*;
import java.nio.*;
import java.nio.channels.FileChannel;
public class Main
{
public static void main(String[] args)
{
Main t = new Main();
t.ReadFlieByLine_IO("E:\\123.txt");
t.ReadFileByLine_NIO("E:\\123.txt");
}

public void ReadFlieByLine_IO(String Filename)
{
File file = new File(Filename);
BufferedReader reader = null;
try
{
System.out.println("以行为单位读取文件内容,一次读一整行:");
reader = new BufferedReader(new FileReader(file));
String tempString = null;
int line = 1;
//一次读入一行,直到读入null为文件结束
while ((tempString = reader.readLine()) != null)
{ //显示行号
System.out.println("line " + line + ": " + tempString);
line++;
}
reader.close();
}
catch (IOException e) {
e.printStackTrace();
}
/** finally {
if (reader != null){
try {
reader.close();
}
catch (IOException e1) {
}
}
}
*/
}

private void ReadFileByLine_NIO(String Filename)
{
FileInputStream file = null;
FileChannel reader = null;
try
{
file = new FileInputStream(Filename);
reader = file.getChannel();
String tempString = null;
ByteBuffer bb = ByteBuffer.allocate((int)reader.size());
reader.read(bb);
bb.flip();
String fileContent= new String(bb.array());
System.out.println(fileContent);
reader.close();
}
catch (IOException e) {
e.printStackTrace();
}
/** finally {
if (reader != null){
try {
reader.close();
}
catch (IOException e1) {
}
}
}
*/
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-04-22
package com;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class Point {

public static void main(String[] args) {
Point p = new Point();
String path = "";// 你要读取的文件的路径 @example@
// "D:\\workspace\\JavaTest\\bin\\com\\a.txt"
p.outputMethod(path);
}

public void outputMethod(String path) {
try {
String[] arr = new String[1];
String[] temp;
BufferedReader br = new BufferedReader(new FileReader(path));
String line = br.readLine();
while (line != null) {
arr[arr.length-1] = line;
temp = new String[arr.length+1];
for(int i=0;i<arr.length;i++){
temp[i] = arr[i];
}
arr = new String[temp.length];
for(int i=0;i<arr.length;i++){
arr[i] = temp[i];
}
line = br.readLine();
}
br.close();
for(int i=0;i<arr.length-1;i++){
System.out.println(arr[i]);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}本回答被提问者采纳

请教两道java编程题,关于IO包的。
import java.io.*;import java.nio.*;import java.nio.channels.FileChannel;public class Main { public static void main(String[] args){ Main t = new Main();t.ReadFlieByLine_IO("E:\\\\123.txt");t.ReadFileByLine_NIO("E:\\\\123.txt");} public void ReadFlieByLine_IO(String F...

java.io包的File类是( )。
【答案】:D D。【解析】Java.io包中的类可以处理不同类型的流,比如字节流、字符流、对象流、非流类等。File类就是一个重要的非流类,它是以一种系统无关的方式表示一个文件对象的属性。

java中的import java.io.*是什么意思 io具体又是什么意思??
import java.io.* 这个是引用包import java.io.*这个的意思而IO则是输入输出流的意思,也就是inputStream,和outputStream这些类的

Java IO模型常见面试题
在Java编程中,I\/O模型是探讨系统如何处理应用程序与外部设备交互的核心话题。面试时,你可能会被问及同步阻塞、同步非阻塞、I\/O多路复用和异步I\/O这几种模型。首先,让我们来看看BIO模型,它是同步阻塞的典型代表,应用程序在发起IO操作时会阻塞,直到操作完成。这在连接较少时效率尚可,但当连接增多,...

快速掌握java中的IO与NIO面试题
本文主要针对Java后端程序员面试中常见的IO与NIO问题进行概述。IO和NIO是Java编程的基础知识点,面试时常常被考察,体现程序员的基础扎实程度和实战应用理解。1. IO流简介Java的IO流分为字节流和字符流,按流向可分为输入流和输出流,按角色有节点流和处理流。节点流直接操作数据,处理流则在现有流上...

关于java.io包中,FileInputStream 的read()方法
public int read() throws IOException 从此输入流中读取一个数据字节。如果没有输入可用,则此方法将阻塞。指定者:类 InputStream 中的 read 返回:下一个数据字节;如果已到达文件末尾,则返回 -1。抛出:IOException - 如果发生 I\/O 错误。个人理解:该方法将输入按字节读入,当读取到字节时就返回...

有关IO流的JAVA编程,要求:把一个数组的元素复制到另个数组;去除重复元 ...
import java.io.FileNotFoundException;import java.io.PrintWriter;import java.util.Arrays;public class Test { public static void main(String[] args) { \/\/ int型Sample数组 int[] testArr = { 8, 1, 2, 3, 4, 5, 4, 3, 2, 2, 5, 1, 2, 3, 4, 1, 2, 3,5, 8 };\/\/...

java中关于io流的问题
1 遍历 目录树,找到每一个.txt文件,每当找到一个txt时,启动一个新线程,解密,找出tarena所在行,并保存相关数据在内存如hashmap中,2 应用程序从hashmap中直接获取所有的内容 这种策略牺牲的是读的时间 其他差不多 第三种策略 使用lucene框架,主要是针对每个文件建立分词索引,这里意义不大,所以...

利用java中io包中的类读写文件,总是出现问号(?)
读之前 s.replaceAll("\/n", "转换的字符");写之前 s.replaceAll("转换的字符","\/n");无语 编码问题

java io是什么意思?
Java IO 是指处理输入输出(Input\/Output)操作的一组类和接口,它提供了各种读写数据的方法和处理数据的方式。 Java IO 常见的操作包括文件读写、网络通信、内存操作等。Java IO 包括 Java 标准库和第三方库,Java 标准库包含了大部分常见的 IO 类,比如 FileReader,FileWriter,BufferedReader,...

相似回答
大家正在搜