- 浏览: 135754 次
- 性别:
- 来自: 大连
文章分类
最新评论
-
datawarehouse:
datawarehouse 写道ngix 淘宝是基于这个开发了 ...
解密淘宝网的开源架构 -
datawarehouse:
ngix 淘宝是基于这个开发了一个自己的webserver吧。 ...
解密淘宝网的开源架构 -
eyelock:
我运行报错,,楼主能解答一下G,对swing不熟。
raphi ...
假期没事,写了个90行的俄罗斯方块,Java实现,史上最小巧 -
lostsky_11:
楼主写出例子了么?物理碰撞部分可能跟你说的差不多渲染部分可以搜 ...
Where is my water 游戏算法 -
xouou_53320:
都是牛人
假期没事,写了个90行的俄罗斯方块,Java实现,史上最小巧
代码些的比较烂,只是从几篇文章中过滤处单词本中没有的单词,导出成单独的一个文件,再手动一个一个录入到单词本中。。小工具。。mark一下。。使用dom4j。
<?xml version="1.0" encoding="UTF-8"?> <wordbook><item> <word>daunting</word> <trans><![CDATA[adj. 使人畏缩的;使人气馁的;令人怯步的 daunting: 令人沮丧 | 使人畏缩的 | 使人气馁的]]></trans> <phonetic><![CDATA[['dɔ:ntiŋ]]]></phonetic> <tags/> <progress>10</progress> </item><item> <word>informative</word> <trans><![CDATA[adj. 教育性的,有益的;情报的;见闻广博的 informative: 告知性的 | 使知道消息的 | 有益的]]></trans> <phonetic><![CDATA[[in'fɔ:mətiv]]]></phonetic> <tags/> <progress>10</progress> </item><item> <word>contribute</word> <trans><![CDATA[vt. 贡献,出力;投稿;捐献 vt. 贡献,出力;投稿;捐献 contribute: 贡献 | 捐助 | 做出贡献]]></trans> <phonetic><![CDATA[[kən'tribju:t]]]></phonetic> <tags/> <progress>10</progress> </item>
import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileWriter; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.Node; import org.dom4j.io.SAXReader; public class WordNewMain { /** * @param args * @throws DocumentException * @throws IOException */ public static void main(String[] args) throws DocumentException, IOException { Map<String, Word> listMap = new HashMap<String, Word>(); SAXReader saxReader = new SAXReader(); saxReader.setEncoding("utf-8"); Document whole1Xml = saxReader.read(new BufferedInputStream(new FileInputStream("all_sych.xml"))); List<Element> whole1List = whole1Xml.selectNodes("//wordbook/item"); System.out.println("whole1 List Size:" + whole1List.size()); for (int i = 0; i < whole1List.size(); i++) { Element e = whole1List.get(i); Node word = e.selectSingleNode("word"); Node trans = e.selectSingleNode("trans"); Node phonetic = e.selectSingleNode("phonetic"); Node tags = e.selectSingleNode("tags"); Node progress = e.selectSingleNode("progress"); Word w = listMap.get(word.getStringValue()); if (w != null && Integer.parseInt(w.getProgress()) < Integer.parseInt(progress.getStringValue())) { w.setProgress(progress.getStringValue()); } else if (w == null) { e.detach(); w = new Word(word.getStringValue(), trans.getStringValue(), phonetic.getStringValue(), tags.getStringValue(), progress.getStringValue()); } listMap.put(word.getStringValue().toLowerCase(), w); } // txt BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("8word.txt")))); System.out.println("Ok, find the file!"); String line = null; byte[] wordB = new byte[30]; Map<String, String> countArea = new HashMap<String, String>(); int wordBP = 0; String theWord = null; System.out.println("Start count~"); FileWriter fw = new FileWriter("result.txt"); while ((line = br.readLine()) != null) { boolean inWord = true; byte[] lineB = line.getBytes(); for (int i = 0; i < lineB.length; i++) { // is a character if ((lineB[i] < 91 && lineB[i] > 64) || (lineB[i] < 123 && lineB[i] > 96)) { wordB[wordBP] = lineB[i]; wordBP = wordBP + 1; inWord = true; } else if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } br.close(); // steven txt br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("steve_4p.txt")))); System.out.println("Ok, find the file!"); while ((line = br.readLine()) != null) { boolean inWord = true; byte[] lineB = line.getBytes(); for (int i = 0; i < lineB.length; i++) { // is a character if ((lineB[i] < 91 && lineB[i] > 64) || (lineB[i] < 123 && lineB[i] > 96)) { wordB[wordBP] = lineB[i]; wordBP = wordBP + 1; inWord = true; } else if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } // GRE text br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("gre.txt")))); System.out.println("Ok, find the file!"); while ((line = br.readLine()) != null) { boolean inWord = true; byte[] lineB = line.getBytes(); for (int i = 0; i < lineB.length; i++) { // is a character if ((lineB[i] < 91 && lineB[i] > 64) || (lineB[i] < 123 && lineB[i] > 96)) { wordB[wordBP] = lineB[i]; wordBP = wordBP + 1; inWord = true; } else if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } // GaoZhong text br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("gz.txt")))); System.out.println("Ok, find the file!"); while ((line = br.readLine()) != null) { boolean inWord = true; byte[] lineB = line.getBytes(); for (int i = 0; i < lineB.length; i++) { // is a character if ((lineB[i] < 91 && lineB[i] > 64) || (lineB[i] < 123 && lineB[i] > 96)) { wordB[wordBP] = lineB[i]; wordBP = wordBP + 1; inWord = true; } else if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } if (inWord) { theWord = new String(wordB).trim().toLowerCase(); if (listMap.get(theWord) == null && theWord.length() > 1) { countArea.put(theWord, theWord); } wordBP = 0; inWord = false; wordB = new byte[30]; } } // output Iterator<String> it = countArea.keySet().iterator(); while (it.hasNext()) { fw.write(it.next() + "\r\n"); } fw.close(); System.out.println("End count~"); System.out.println("Sum word of steve is :" + countArea.size()); } }
发表评论
-
MyLab
2015-11-23 12:35 433Server-0 OS:Oracle linux Softwa ... -
Learning
2015-03-23 13:43 348HighOAuth2.0Jira Confluence,G ... -
Eclipse 绘制草图的plugin
2013-02-20 15:52 812http://wireframesketcher.com/d ... -
My Environment
2013-01-22 16:19 811PC1-Server OS:RedHat Softwa ... -
话单匹配问题
2012-09-04 15:35 726需求是,有2套话单,每套中有2个字段为关联字段, 话单文件1 ... -
Senior Solution Architect(Systems)
2012-02-28 11:03 841努力方向. The Senior Solution Archi ... -
关于火车订票系统瓶颈的分析及解决方案
2012-01-09 09:12 2484需求描述 1.网站订票 2.身份证实名验证 思考 1.根据新 ... -
[疑问]关于NIO的耗时服务端业务逻辑问题????
2012-01-04 16:59 1703研究了一下NIO的非阻塞连接。。似乎有点问题。。 当服务端处理 ... -
[小代码]蜘蛛爬虫,抓取某网站所有图片文章中的图片~
2012-01-02 12:02 4492为朋友的网站写了个小代码,把所有图片下载到本地,有点不道德了, ... -
写了个小代码,统计史蒂夫乔布斯传英文版的单词数量
2011-12-11 15:58 875package com.ai; import java. ... -
软件项目版本号的命名规则及格式介绍
2011-01-12 10:19 954版本控制比较普遍 ... -
中文编码基础知识介绍
2009-01-22 15:30 948GB2312 范围: 0xA1A1 - 0xFEFE 汉字范围 ... -
软件架构
2008-12-26 16:03 935软件架构(software arch ... -
理解架构师
2008-12-26 15:35 987架构师应该精通分析和设计。架构师应该比常人容易理解事物的基本原 ... -
架构和架构设计师
2008-12-26 15:34 1015系统架构通俗的说起来 ... -
构架师之路
2008-12-12 11:08 862胡德平◎《Java联盟》客栈论坛 构架师(Archit ... -
软件架构师成长之路
2008-12-12 11:07 997对于任何一个软件开发 ... -
某公司的技术能力
2008-11-23 11:36 934操作系统:Windows 2000/2003, Linux,S ... -
大型网站架构之:MySpace的体系架构
2008-10-26 01:31 1168MySpace.com有着6500万的订 ... -
IT网站
2008-10-02 23:24 978一、IT技术开发综合类 http://community ...
相关推荐
金山词霸除了单词查词功能,大家用得比较多的是金山词霸的生词本功能。 不可否认,金山词霸是个非常棒的英文单词查询工具,但其它功能还是有很多功能不完善。如生词本功能。 每一个人学单词时,学的顺序和内容都...
当用户在使用这款插件查询到新单词后,可以一键将生词添加到扇贝的生词本中,这样用户就可以在任何时间、任何地点通过手机等移动设备复习这些单词。这一跨设备同步学习的特性,使得用户可以充分利用碎片时间进行学习...
它包含了一个名为"DICT.TXT"的文本文件,这可能是一个包含了大量英语单词及其对应信息的字典数据库。这种字典文件对于编写Python脚本尤其有价值,可以用于各种目的,如拼写检查、自然语言处理(NLP)、词汇统计,...
【单词生词本源码】是一个专为学习者设计的软件应用源代码,它具备了重要的语音功能,使得用户在学习单词时可以听到正确的发音,从而提升听力和发音能力。这款源码的主要目标是帮助用户积累和管理他们的生词,通过...
为了进一步巩固记忆,金山词霸可能提供了将生词本导出成背单词格式的功能。这类格式通常包含了单词、词义、例句等,设计得旨在帮助用户高效地进行复习。用户可以通过软件的复习模式,根据自己的记忆曲线进行针对性的...
一个winform的小型软件,从有道词典的生词本中导出xml格式的单词本,然后转换为安卓手机的给力背单词软件的所需要的txt词库文件 技术特点: XmlTextReader读取xml,List泛型,生成txt文件 开发环境为Visual ...
4593条英语单词库txt版本,一行是一个条目。 方便大家用python判断单词,也方便大家转为自己想要的数据库。
有道词典单词表导出工具用于导出有道词典生词本中的单词表,输出为文本格式,可以整理打印出来,也可以作为词汇之沙我爱背单词,极速单词等背单词软件的词库使用。
【标题】"安卓英语生词本.rar"是一个针对Android平台的英语词汇学习应用的源代码压缩包。这个项目可能是为了帮助用户积累和复习英语单词,提高他们的英语词汇量。开发者可能已经实现了一些基本功能,如添加单词、...
《我的生词本 MyNewWords 1.0》是一款专为学习者设计的高效生词管理工具,旨在提升用户在英语学习过程中的词汇积累效率。它与著名的翻译软件灵格斯(Lingoes)无缝集成,能够实时监控用户的复制操作,从而在用户遇到...
标题中的“有道单词本最常用5000个英文单词”表明这是一份与英语学习相关的资源,特别聚焦在有道单词本软件上。有道是中国知名的在线教育平台,其单词本产品是一款帮助用户记忆英语单词的应用。这份资源包含了被认为...
《英汉词典TXT格式》是一种常见的电子词典资源,主要以纯文本文件的形式存储了大量英语单词及其对应的汉语翻译。这种格式简单易用,便于在各种设备上阅读和搜索,尤其适合编程爱好者和学习者进行数据处理。下面将...
在软件开发和自然语言处理领域中,字典文件(如dict.txt)是一种常见的资源,它通常用于存储一系列词汇及其定义或翻译。此类文件在词典应用、机器翻译系统、拼写检查器等软件中扮演着核心角色。 ### 文件结构分析 ...
本词库为一个庞大的英语单词集合,共计超过47万条单词记录。该词库不仅涵盖了日常生活中常见的词汇,还包含了专业术语以及特定的地名等。这样的全面性使其成为进行自然语言处理(Natural Language Processing, NLP)...
该文件主要用来实现将simulink数据字典中的parameter参数导出到excel中,以便全面了解simulink模型中各参数的标定值,便于分析模型;并可在导出的excel表格中记录更改参数的历史,并进行对比分析。将文件导入到...
《牛津英汉词典 .txt版》是一个用于编程语言如Java进行文本处理或构建翻译工具的资源。这个特别的版本以纯文本格式提供,存储为名为“dictionary.txt”的文件。这种格式简单易读,适合程序员们直接进行数据处理,但...
中文词典 NLP ,收录45159条中文词语,每行一个用 /n 隔开,方便拆分使用 哀怜 哀鸣 哀戚 ... 曝光 曝光表 曝露
【TXT格式牛津词库】是一种以纯文本(TXT)为载体的词汇资源,它包含了丰富的英语词汇信息,按照字母顺序从A到Z进行了详细分类。这种格式的词库非常适合那些希望开发自己的查询系统或者进行语言学习的人使用。在本文...
标题中的“成语词典 数据库 txt xls文件”指的是一个包含大量成语信息的资源包,它提供了两种格式的数据:TXT文本和XLS电子表格。这些数据可用于构建或更新一个成语词典数据库,方便用户查询和学习。 描述中提到的...
10W+ 英语单词 TXT格式,已经整理好中英双语翻译。方便导入excel和word和数据库等文档