【问题标题】:How to catch string in txt file using scanner?如何使用扫描仪捕获 txt 文件中的字符串?
【发布时间】:2013-07-21 00:11:30
【问题描述】:

我正在使用此示例代码对一个文本文件进行一次搜索:

private void buildLink(){

           int wordCount = 0, totalcount = 0;
           Scanner s = new Scanner(googleNode);
           while (s.hasNext()) {
               totalcount++;

            if (s.next().equals("href")) wordCount++;
           }
           System.out.println(wordCount+" "+totalcount);
       }

但我的问题是 s.hasNext 在搜索中跳过了大部分单词(可能因为文本文件是一个 html 代码,几乎没有空格字符)。对于此示例代码,输出计数为:

字数 = 0 总数 = 18056

那么,我到底做错了什么,我应该怎么做才能解决,因为我想要的是在这个 html 代码中捕获一个链接并传递给一个字符串变量?

我认为这样做的一种方法是将整个 html 代码放在一个字符串中,然后处理搜索,但这对于一个优秀的程序员来说太可笑了..

有人可以帮帮我吗?提前致谢

【问题讨论】:

  • 使用 equals 可以在每一行中找到准确的单词“href”,或者搜索该行是否包含字符串 href。
  • 对于像<a href="b">c</a> 这样的文件,扫描仪默认查看<ahref="b">c</a>
  • if (s.next().contains("href")) wordCount++; } System.out.println(wordCount+" "+totalcount);我认为这是必须的。
  • @johnchen902 这就是我的想法,这就是它跳字的原因,那我该怎么办?有什么想法吗?
  • @Deckard27 该死的你,非常感谢!它的工作=)))作为答案发布,因此我可以接受你的贡献

标签: java string hyperlink text-files java.util.scanner


【解决方案1】:
if (s.next().contains("href")) wordCount++; } System.out.println  (wordCount+" "+totalcount); } 

我认为这是必须的

【讨论】:

  • 也许您可以将"href" 更改为" href=",以减少误报。
  • @johnchen902 是个好主意,但他也可以搜索“
猜你喜欢
  • 1970-01-01
  • 2014-07-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-11
  • 2012-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多