help

[复制链接]
查看11 | 回复3 | 2006-10-19 11:36:01 | 显示全部楼层 |阅读模式
急,在线等。。!!新手遇到问题请赐教
以下是一个HTML的分析程序,目的是将HTML格式的表格转化成一个表格,去除HTML的标记(如HTML,TABLE,TR,TD等)。
遇到一个问题,当出现表格中日期时怎么来显示
import java.io.*;
import java.util.*;
public class test{
public static void main(String[] args) throws IOException
{
//
// Create a file, a reader, and attach it to a tokenizer.
//
File inputFile = new File(\"che.html\&quot

;
FileReader in = new FileReader(inputFile);
StreamTokenizer parser = new StreamTokenizer(in);
boolean flag=true;
double token;
//
// While the next token is not the end of the file read it in
// and determine if it is a string or a number.
//
while ((token = parser.nextToken()) != StreamTokenizer.TT_EOF)
{
//
// Words are stored in the .sval variable
//
if(token ==\'\') flag= true;
if (token == StreamTokenizer.TT_WORD)
if(parser.sval.equalsIgnoreCase(\"tr\&quot

) System.out.println();
if (token == StreamTokenizer.TT_WORD && flag) {
String x = parser.sval;
System.out.print(x + \"\\t\&quot

;
}
//
// Numbers are stored in the .nval variable
//
else if (token == StreamTokenizer.TT_NUMBER && flag) {
double num=parser.nval;
System.out.print(num + \"\\t\&quot

;
}
}
in.close();
}
}

由 flush2621 于 06-11-09 14:19 最后编辑
回复

使用道具 举报

千问 | 2006-10-19 11:36:01 | 显示全部楼层
虽然解决不了`但帮你顶一下吧!
回复

使用道具 举报

千问 | 2006-10-19 11:36:01 | 显示全部楼层
1 HTML表格中保存的是数字还是字符串?看到你token的类型是double,所以有些奇怪,一般都是读进来解析成String。如果你的确已经得到了double类型的日期,Date类有相应的构造函数可以转化成你想要的日期格式:http://java.sun.com/j2se/1.5.0/docs/api/java/util/Date.html
2 Google一下“HTML Parser”,我想可以得到很多有用的信息。
回复

使用道具 举报

千问 | 2006-10-19 11:36:01 | 显示全部楼层
仅供参考:
这样的代码似乎不适用于多重表格嵌套的情况,除非能够保证所读到的html文件的格式是严格按照接口进行定义的。
另,如果html文件内日期是以数字形式表示的,比如2006年11月1日,等等,估计会解析出三个数字三个词来,不可能满足要求的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行