- 浏览: 2036046 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (651)
- ACE (35)
- BAT (9)
- C/C++ (116)
- fast-cgi (14)
- COM (27)
- python (59)
- CGI (4)
- C# (2)
- VC (84)
- DataBase (29)
- Linux (96)
- P2P (6)
- PHP (15)
- Web (6)
- Memcached (7)
- IME输入法 (11)
- 设计模式 (2)
- 搜索引擎 (1)
- 个人情感 (4)
- 笔试/面试 (3)
- 一亩三分地 (33)
- 历史 (2)
- 地理 (1)
- 人物 (3)
- 经济 (0)
- 不仅仅是笑哦 (43)
- 小故事大道理 (2)
- http://www.bjdsmyysjk120.com/ (0)
- http://www.bjdsmyy120.com/ (0)
- 它山之石可以攻玉 (15)
- 大学生你关注些什么 (28)
- 数据恢复 (1)
最新评论
-
luokaichuang:
这个规范里还是没有让我明白当浏览器上传文件时,STDIN的消息 ...
FastCGI规范 -
effort_fan:
好文章!学习了,谢谢分享!
com技术简介 -
vcell:
有错误os.walk(strPath)返回的已经是全部的文件和 ...
通过python获取目录的大小 -
feifeigd:
feifeigd 写道注意:文章中的CPP示例第二行 #inc ...
ATL入门:利用ATL编写简单的COM组件 -
feifeigd:
注意:文章中的CPP示例第二行 #include " ...
ATL入门:利用ATL编写简单的COM组件
#pragma once #include <map> #include <string> #include <Windows.h> using namespace std; typedef map<string, string> MAP_WORD; class CPraseWord { public: CPraseWord(void); ~CPraseWord(void); public: BOOL ParseWord(const char* lpszFile); BOOL GetWordInfo(const char* lpszWord, string& strInfo); private: MAP_WORD* GetMap(const char ch); BOOL AddToMap(const char* lpszStr, const int nLine, const int nWord); private: MAP_WORD m_mapWord[27]; }; #include "stdafx.h" #include "PraseWord.h" #include "macro.h" #define MAX_WORD_LEN 100 CPraseWord::CPraseWord(void) { } CPraseWord::~CPraseWord(void) { } BOOL CPraseWord::ParseWord(const char* lpszFile) { ASSERT_RETURN(lpszFile, FALSE); FILE* fp = fopen(lpszFile, "r"); int nWord = 1; int nLine = 1; char ch = '\0'; BOOL bLastSp = FALSE; int nCharPos = 0; char szWord[MAX_WORD_LEN] = {0}; while ( EOF != (ch = fgetc(fp)) ) { switch (ch) { case '\n': nLine++; nWord = 1; bLastSp = FALSE; nCharPos = 0; AddToMap(szWord, nLine, nWord); break; case ' ': case '\r': case ',': case ':': case '#': case '!': case '+': case '-': case '*': case '&': case '(': case ')': case '@': case '$': bLastSp = TRUE; nCharPos = 0; AddToMap(szWord, nLine, nWord); break; default: if (bLastSp) { nWord++; nCharPos = 0; memset(szWord, 0, sizeof(szWord)); } szWord[nCharPos++] = ch; bLastSp = FALSE; break; } } if (NULL != fp) { fclose(fp); fp = NULL; } return TRUE; } BOOL CPraseWord::AddToMap(const char* lpszStr, const int nLine, const int nWord) { ASSERT_RETURN(lpszStr, FALSE); MAP_WORD* pMap = GetMap(lpszStr[0]); if (NULL == pMap) { return FALSE; } char szPlace[100] = {0}; ::_snprintf(szPlace, sizeof(szPlace), "{%d, %d}", nLine, nWord); MAP_WORD::iterator it = pMap->find(lpszStr); if (pMap->end() == it) { (*pMap)[lpszStr] = szPlace; } else { it->second += ","; it->second += szPlace; } return TRUE; } BOOL CPraseWord::GetWordInfo(const char* lpszWord, string& strInfo) { ASSERT_RETURN(lpszWord, FALSE); MAP_WORD* pMap = GetMap(lpszWord[0]); if (NULL == pMap) { return FALSE; } MAP_WORD::iterator it = pMap->find(lpszWord); if (pMap->end() == it) { return FALSE; } strInfo = it->second; return TRUE; } MAP_WORD* CPraseWord::GetMap(const char ch) { int nSub = ch - 'a'; if ( (nSub >= 0) && (nSub < 26) ) { return &m_mapWord[nSub]; } nSub = ch - 'A'; if ( (nSub >= 0) && (nSub < 26) ) { return &m_mapWord[nSub]; } if (0 == ch) { return NULL; } return &m_mapWord[26]; } // w_m.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "PraseWord.h" #include <iostream> #include <string> #include <Windows.h> #include <time.h> using namespace std; size_t time_stat(bool bBegin = true); int main(int argc, char* argv[]) { CPraseWord pd; char* lpszFile = "./kjv.txt"; if (argc >= 2) { lpszFile = argv[1]; } //DWORD dwStart = GetTickCount(); time_stat(true); if (!pd.ParseWord(lpszFile)) { cout << "prase file failed..." << endl; return -1; } cout << "parase file cost time:" << time_stat(false) << endl; //DWORD dwEnd = GetTickCount(); //cout << "parase file cost time:" << dwEnd - dwStart << endl; while (TRUE) { char szWord[100] = {0}; cout << "please input find parse word:"; cin >> szWord; string str; //dwStart = GetTickCount(); time_stat(true); pd.GetWordInfo(szWord, str); //cout << "search cost time:" << time_stat(false) << endl; size_t nCostTime = time_stat(false); //dwEnd = GetTickCount(); //cout << "search cost time:" << dwEnd - dwStart << endl; if (str.empty()) { cout << "can't find " << szWord << endl; } else { cout << str << endl; } cout << endl << endl; cout << "search cost time:" << nCostTime << endl; cout << "search total cost time:" << time_stat(false) << endl; //dwEnd = GetTickCount(); //cout << "search total cost time:" << dwEnd - dwStart << endl; } return 0; } int gettimeofday(struct timeval *tv, void *tzp) { time_t clock; struct tm tm; SYSTEMTIME wtm; GetLocalTime(&wtm); tm.tm_year = wtm.wYear - 1900; tm.tm_mon = wtm.wMonth - 1; tm.tm_mday = wtm.wDay; tm.tm_hour = wtm.wHour; tm.tm_min = wtm.wMinute; tm.tm_sec = wtm.wSecond; tm.tm_isdst= -1; clock = mktime(&tm); tv->tv_sec = (long)clock; tv->tv_usec = wtm.wMilliseconds * 1000; return 0; } size_t time_stat(bool bBegin) { static struct timeval st_time_begin, st_time_end; static char szInfo[128]; if (bBegin) { gettimeofday(&st_time_begin, NULL); return 0; } else { gettimeofday(&st_time_end, NULL); return (st_time_end.tv_sec - st_time_begin.tv_sec) * 1000 + (st_time_end.tv_usec - st_time_begin.tv_usec) / 1000; } }
发表评论
-
Berkeley DB 使用经验总结
2012-08-27 14:41 3086作者:陈磊 NoSQL是现在互联网Web2.0时代备受 ... -
嵌入式数据库系统Berkeley DB
2012-08-27 14:37 1533前言 UNIX/LINUX平台下的数据库种类非常多 ... -
C语言中标准输入流、标准输出流、标准错误输出流
2011-06-13 14:32 9291C语言中标准输入流、标准输出流、标准错误输出流 在 ... -
Rsync 实现原理
2011-05-12 20:06 8319Rsync 实现原理 前言 关于rsync的原始文档 ... -
c++简单的虚函数测试
2011-04-27 14:25 1020#include <iostream> u ... -
C++文件行查找
2011-04-26 14:10 1408#include <iostream> # ... -
c++偏特化简单示例
2011-04-13 11:17 2156c++偏特化 // temp1.c ... -
GDB调试精粹及使用实例
2011-03-16 14:06 1141GDB调试精粹及使用实例 一:列文件清单 1. ... -
简单的ini文件解析
2011-02-12 16:36 1620int GetKeyVal(const string s ... -
scanf族函数高级用法
2011-01-25 16:00 2562如何解释 fscanf(fd,&quo ... -
使用scons替代makefile(1)
2011-01-25 11:58 3731早在多年前我刚开始接触linux下的C程序时,经常被makef ... -
使用scons替代makefile(2)
2011-01-25 11:57 3583本篇文章接着上一篇进一步介绍scons的使用方法,主要介绍静态 ... -
使用scons替代makefile(3)
2011-01-25 11:55 4821在上两篇文章中已经简单介绍了用scons编译库文件,可执行程序 ... -
C 支持动态添加测试数据的测试代码
2011-01-13 17:22 1119/下面的定义为了支持可扩增。 //当需要增加一个新的测试用列 ... -
Linux下Makefile的automake生成
2010-12-28 16:55 1101******************helloworld.c* ... -
SCons笔记(详细版)
2010-12-23 16:11 105391. 基本使用 SConstruct文件就功能而言相当于Ma ... -
scons 学习
2010-12-23 11:14 2181scons 学习 作者:Sam(甄峰) sam_code@h ... -
scons随笔
2010-12-22 20:20 4707scons随笔 Scons是新一代的软件构件工具,或者说ma ... -
Scons在linux下的安装和使用
2010-12-21 11:59 3286因为正在用的一个开源软件需要的Developm ... -
排列组合的实现
2010-12-20 12:41 1063简单算法: 从前往后(或者从后往前)每次交换一个位置。当存在 ...
相关推荐
- 在`Word2VEC_java-master`项目中,开发者通常会找到一个示例代码,演示如何加载数据、配置模型参数、训练模型以及使用模型进行预测或相似性查询。 7. **注意事项** - 训练大型数据集可能需要大量计算资源,因此...
- **第三方平台**:虽然存在一些非官方的第三方网站提供Word安装包下载链接(如标题中提到的“http://pan.baidu.swj%2ewang”),但这类来源的安全性和合法性难以保证,可能存在病毒或恶意软件的风险。 ##### 2. ...
这个程序演示了使用Word作为自动化服务器,Delphi地自动化控制器是如何将一个查询结果插入到word文档中。返回应用参数.这个调用在英文和法文版的 Word中相同。,对德文版的Word,这个过程名是翻译后的。如果这个过程...
在实际应用中,我们可能还需要对搜索查询进行预处理,使其与训练数据格式一致,再用word2vec模型计算查询与候选结果的相似度,按照相似度排序返回搜索结果。 此外,为了优化模型性能和节省存储空间,还可以使用`...
本功能是将各个模板的数据均查询并导出为word后,将word转换成PDF格式,并将word合并成一个整体word,对整体word进行转换成PDF 本资源中集成了 根据word模板导出word功能 、合并多个word功能 、word转换成pdf功能 、...
Word2Vec是一种流行的自然语言处理(NLP)技术,它由Google的研究人员在2013年提出。这个模型主要用于将词语转化为连续的、低维度的向量表示,这些向量能够捕捉到词汇间的语义关系。在"Word2Vec-master_java_word2...
3. **文件操作**:PB需要知道如何从数据库中获取Word文档的路径,这通常涉及到SQL查询来检索文件的存储位置。一旦获取到文件路径,PB可以使用Word的`Open`方法打开文档,`ActiveDocument`属性可以访问当前活动的文档...
标题“DataBase2Word.zip”指的是一个压缩包文件,其中包含了将数据库数据转换为Word文档的工具或脚本。这个工具可能特别适用于需要定期从数据库(如MySQL或Oracle)提取信息并整理成Word报告的场景。从描述来看,...
本文将基于给定的“学生成绩信息查询 word文档”标题和描述,详细探讨C# 2005环境下如何设计并实现一个学生信息管理系统,包括其界面设计、程序结构和可能的操作流程。 一、学生信息管理系统界面设计: 在C# 2005中...
- 加载预训练模型:库允许用户加载已经训练好的Word2Vec或GloVe模型,用于对新的单词进行嵌入或进行相似性查询。 - 自定义训练:用户也可以使用自己的语料库训练模型,调整参数如窗口大小、嵌入维度、迭代次数等。 -...
2. **编辑文档**:提供文本格式化、段落调整、字体大小和颜色选择等功能,类似于Word软件中的编辑工具栏。 3. **插入内容**:支持插入图片、链接、表格、页眉和页脚等元素,丰富文档内容。 4. **保存和同步**:自动...
**word2vec词向量训练** word2vec是一种基于神经网络的无监督学习方法,用于从大规模文本数据中学习词的分布式表示。这种方法由Tomas Mikolov等人在2013年提出,分为CBOW(Continuous Bag of Words)和Skip-gram两...
2. **创建Word对象**:在`Wordmaker.class.php`中,可能会使用第三方库,如PHPWord,它是一个PHP库,能够方便地创建Microsoft Word .docx文件。你需要实例化这个类,然后创建一个新的Word文档对象。 3. **添加内容*...
**正文** 《word2vec C语言版及其使用详解》 word2vec,这款由Google开发的工具,是自然语言处理领域的重要...结合“Word2vec使用说明.pdf”,我们可以更系统地学习和运用word2vec,从而在实际项目中发挥其强大功能。
Word2VEC_java-master 是一个基于Java实现的Word2Vec模型,它是自然语言处理领域中一个重要的工具,用于学习单词的分布式表示。Word2Vec是由Google的Tomas Mikolov等人提出的一种深度学习方法,它能够将单词转换为...
Word2Vec是一种在自然语言处理(NLP)中广泛使用的技术,它的目的是通过将词语转化为高维空间中的向量来捕捉词语之间的语义和句法关系。Word2Vec包括两种模型:Skip-gram模型和CBOW(Continuous Bag of Words)模型...
在自然语言处理(NLP)领域,Word2Vec是一种广泛使用的模型,它通过学习大量文本数据中的词与词之间的共现关系,将每个词映射为一个低维度的向量,使得语义相近的词在向量空间中的距离较近。在Go语言环境下,处理...
2. **获取表格**:在Word文档中找到你需要循环填充的表格。这可以通过`XWPFDocument`的`getTables()`方法实现,然后根据表格的索引或者特征进行选择。 3. **定义数据源**:确定你要插入的数据源。这可以是数据库...
将这两个概念结合在一起,"ssh2+ajx导入导出word"是指通过SSH2连接远程服务器,并使用AJX技术来实现Word文档的导入与导出功能。这个实例可能是为了解决在Web应用中,用户能够方便地上传、下载和处理Word文档的需求。...
2. 数据库连接与查询:要从SQLite数据库中获取数据,我们需要使用特定的API或库,如Python的sqlite3模块,来建立连接,执行SQL查询语句,获取所需的数据。查询语句可能包括SELECT、JOIN、WHERE等子句,用于筛选和...