就还剩下10分,请教一个文件操作的小问题(10分)

  • 主题发起人 主题发起人 lvzhong
  • 开始时间 开始时间
L

lvzhong

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟的一段程序如下
import java.io.*;





private String ReadFile (String FileName)
{
String retu;
RandomAccessFile file1=new RandomAccessFile( FileName,"r");//到这了过去了




return(retu);
}
提示是: Exception 'IOEception' not caught or declared by
'String Form1.ReadFile(String FileNAme)' (J0122)
小弟用的是J++6.0。
向高手请教该怎么改。
 
请告诉我行吗?
 
When you create a RandomAccessFile object, it will throw an IOException:
public RandomAccessFile( String name, String mode ) throws IOException
Use:
private String ReadFile (String FileName)
{
String retu;
RandomAccessFile file1;
try{
file1 = new RandomAccessFile( FileName,"r");//到这了过去了



}catch (IOException e){
e.printStackTrace();
}
return(retu);
}
 
多谢多谢,还有一不情之请。
能把开头的一段用中文再说一遍吗?另外,请解释一下
catch (IOException e){
e.printStackTrace();
是啥意思
 
在new一个RandomAccessFile的时候,会抛出异常。所以需要用try...catch来捕获它并处理。
 
太感谢YoYoYo了。还有点问题请教你,本应新开个贴子,不过我已经一分不剩了,索性就在
这一起问了。
还是这段程序,现在改成了
public static String ReadFile(String FileName)
{
byte b[];
int m;
String retu;
RandomAccessFile file1;

try{
file1 = new RandomAccessFile( FileName,"r");

retu=file1.readLine();

}catch (IOException e){
e.printStackTrace();
retu="";
}
return(retu);
}
它读的文件是c:/英汉标准.txt。
原文是 'd*v. 应该
可读出的结果是 'd*v. Ó¦¸Ã
请问为什么会这样,我该怎么改呢?
 
没有问题啊!用下面的程序,如果有问题就看你的 c:/英汉标准.txt 文件是不是还有什么问题。
import java.io.*;
public class A{
public static String ReadFile(String FileName)
{
byte b[];
int m;
String retu;
RandomAccessFile file1;

try{
file1 = new RandomAccessFile( FileName,"r");

retu=file1.readLine();

}catch (IOException e){
e.printStackTrace();
retu="";
}
return(retu);
}

public static void main(String[] args){
String sRet = ReadFile("c:/英汉标准.txt");
System.out.println("total " + sRet.getBytes().length + "bytes");
System.out.println(sRet);
}
}
 
检查一下jdk的encoding
 
后退
顶部