当前位置: 技术问答>java相关
一个读取文本文件的问题,请各位指教....
来源: 互联网 发布时间:2015-01-05
本文导语: 这是我的源程序,用来实现将URL中的文本文件f.html打开并输出,有谁知道其他用JAVA打开并输出文本的程序 //url类在Application中的应用 import java.awt.*; import java.net.*; import java.io.*; class appURL { public static void main(String ...
这是我的源程序,用来实现将URL中的文本文件f.html打开并输出,有谁知道其他用JAVA打开并输出文本的程序
//url类在Application中的应用
import java.awt.*;
import java.net.*;
import java.io.*;
class appURL
{
public static void main(String args[])
{
try{
URL url1=new URL("file://c:/javapower/jpad/f.html");
System.out.println(url1);
System.out.println(url1.toString());
System.out.println("f.html:");
String s,line;
DataInputStream text;
text=new DataInputStream(url1.openStream());
while((s.line=text.readLine())!=null) //这里出错
System.out.println(s.line);
text.close();
}
catch(MalformedURLException e)
{
System.out.println("URLException:"+e);
}
catch(IOException ioe)
{
System.out.println("IOException:"+ioe);
}
}
}
//url类在Application中的应用
import java.awt.*;
import java.net.*;
import java.io.*;
class appURL
{
public static void main(String args[])
{
try{
URL url1=new URL("file://c:/javapower/jpad/f.html");
System.out.println(url1);
System.out.println(url1.toString());
System.out.println("f.html:");
String s,line;
DataInputStream text;
text=new DataInputStream(url1.openStream());
while((s.line=text.readLine())!=null) //这里出错
System.out.println(s.line);
text.close();
}
catch(MalformedURLException e)
{
System.out.println("URLException:"+e);
}
catch(IOException ioe)
{
System.out.println("IOException:"+ioe);
}
}
}
|
fileur = new URL(/tech-qa-java/url/index.html);是指以url字符串所代表的url地址,创建一个URL对象。
filecon = fileur.openStream(); 对URL对象打开一个连接,并且放回一个流以便读取该连接。
filedata = new DataInputStream(filecon); 创建一个数据输入流从上面的那个输入流读取数据。
while ((fileline = filedata.readLine()) != null) {
byte b[]=fileline.getBytes("ISO8859_1");
System.out.println(new String(b,"GB2312"));
}
一行行的读直到数据结束。结束时以null表示。
由于java的中文问题,每次读入的一行都必须按iso88951的格式送到一个byte数组中,
然后:Allocates a new String containg characters constructed from an array of 8-bit integer values. Each character c in the resulting string is constructed from the corresponding component b in the byte array such that
c == (char)(((hibyte & 0xff)
filecon = fileur.openStream(); 对URL对象打开一个连接,并且放回一个流以便读取该连接。
filedata = new DataInputStream(filecon); 创建一个数据输入流从上面的那个输入流读取数据。
while ((fileline = filedata.readLine()) != null) {
byte b[]=fileline.getBytes("ISO8859_1");
System.out.println(new String(b,"GB2312"));
}
一行行的读直到数据结束。结束时以null表示。
由于java的中文问题,每次读入的一行都必须按iso88951的格式送到一个byte数组中,
然后:Allocates a new String containg characters constructed from an array of 8-bit integer values. Each character c in the resulting string is constructed from the corresponding component b in the byte array such that
c == (char)(((hibyte & 0xff)