初学者的一个问题 编写一个Java应用程序,将一个Java源文件的内容读入到程序中,然后输出该文件使用了那些类,即输出该文件所使用的类的名字。分析提示:使用模式匹配技术查找文件内容和指定模式匹配的字符序列。 请高手解答,不胜感激!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以先把文件一行一行的读出来,放到一个String中,再用正则表达式检查。 只是将文件读取出来显示:import java.io.*;public class FileTest{ public static void main(String[] args) { String s=""; try { FileInputStream fis=new FileInputStream("c:\\CsdnTest.java"); DataInputStream dis=new DataInputStream(fis); while(true) { s=dis.readLine(); if(s.equals(null)) { break; } System.out.println(s); } dis.close(); } catch(Exception e) { } }} 补充了功能: 给分吧:)import java.io.*;import java.util.regex.*;public class FileTest{ public static void main(String[] args) { String s=""; String rs=""; try { FileInputStream fis=new FileInputStream("c:\\CsdnTest.java"); DataInputStream dis=new DataInputStream(fis); while(true) { s=dis.readLine(); if(s.equals(null)) { break; } String a=".*class.*"; Matcher m= Pattern.compile(a).matcher(s); if(m.matches()) { rs=rs+s+"\n"; } else { } System.out.println(s); } System.out.println(rs); dis.close(); } catch(Exception e) { System.out.println("本文件使用到的类:"+rs); System.out.println(e.getMessage()); } }} 无聊,发个表达式计算的程序 关于数型结构排序的问题 有关深度拷贝的小问题! 16进制字符串转换为float值 java3d中如何remove一个SimpleUniverse中的BranchGraph? 请问JAVA中如何引用缺省包中的类? 【求助】关于java压缩问题? 在函数中如何通过 修改形参值 来 改变实参值? 关于invoke的问题 请问如何将swing生成的Dialog窗口的左上方的小图标去掉? 如何读取jar包中的配置文件? 求助:JSP程序出现NullPointerException异常,路过的请进来看看
import java.io.*;
public class FileTest
{
public static void main(String[] args)
{
String s="";
try
{
FileInputStream fis=new FileInputStream("c:\\CsdnTest.java");
DataInputStream dis=new DataInputStream(fis);
while(true)
{
s=dis.readLine();
if(s.equals(null))
{
break;
}
System.out.println(s);
}
dis.close();
}
catch(Exception e)
{
}
}
}
import java.io.*;
import java.util.regex.*;public class FileTest
{
public static void main(String[] args)
{
String s="";
String rs="";
try
{
FileInputStream fis=new FileInputStream("c:\\CsdnTest.java");
DataInputStream dis=new DataInputStream(fis);
while(true)
{
s=dis.readLine();
if(s.equals(null))
{
break;
}
String a=".*class.*";
Matcher m= Pattern.compile(a).matcher(s);
if(m.matches())
{
rs=rs+s+"\n";
}
else
{
}
System.out.println(s);
}
System.out.println(rs);
dis.close();
}
catch(Exception e)
{
System.out.println("本文件使用到的类:"+rs);
System.out.println(e.getMessage());
}
}
}