亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? invert10_31.c

?? 為自然語(yǔ)言處理領(lǐng)域的中文分詞程序
?? C
?? 第 1 頁(yè) / 共 4 頁(yè)
字號(hào):
		/* 若文件不存在, 以創(chuàng)建方式打開文件 */
		stream = fopen(sDir, "w+");
		if(stream == NULL)
		{
			printf("error is: %d\n", EFILEOPEN);
			return EFILEOPEN;
		}
		/*第一次創(chuàng)建時(shí)寫入1.txt*/
		fprintf(stream, "%s", "1.txt");
		fclose(stream);
	}
	/*將文件名字記錄在$curfile.txt文件中*/
	else
	{
		fprintf(stream, "%s", sFileName);
		fclose(stream);
	}
	return 0;
}

int wrtlst(InvertNode *pCurIvtIdx, char * sFileName, char * sCurDir, long nKbyte)
{
	FILE *stream;
	long curFileSize = 0;
	DocNode *pCurDocNode;
	int i, nFileNum = 0, malloccount;
	int bdown = 0;
	char  *newFileName = NULL, *curFileName, *curPFN, *strbuf, *tempbuf;
	
	if((pCurIvtIdx == NULL) || (sFileName == NULL) || (sCurDir == NULL) || (nKbyte <= 0))
	{
		printf("error is: %d\n", EWT2FLP);
		return EWT2FLP;
	}
	curFileName = (char*)malloc(sizeof(char)* (20 + strlen(sCurDir)));
	newFileName = (char*)malloc(sizeof(char)* (20 + strlen(sCurDir)));
	curPFN = (char *) malloc (sizeof(char) * ( 20 + strlen(sCurDir)));
	strbuf = (char *) malloc(sizeof(char) * MAXLINELEN * MAXWORD);
	tempbuf = (char *) malloc(sizeof(char) * MAXLINELEN * MAXWORD);
	malloccount = 1;
	strbuf[0] = '\0';
	/*將文檔內(nèi)容寫入字符串*/
	while (pCurIvtIdx != NULL)
	{
		pCurDocNode = pCurIvtIdx->pDocNode;
		if (pCurDocNode != NULL)
		{
			/*printf("%s ", pCurIvtIdx->sWords);*/
			strcat(strbuf,"@");
			sprintf(tempbuf,"%s", pCurIvtIdx->sWords);
			strcat(strbuf, tempbuf);
			sprintf(tempbuf," #%d ", pCurIvtIdx->lDocNum);
			strcat(strbuf, tempbuf);
			while (pCurDocNode != NULL)
			{
				sprintf(tempbuf,"%s ,%f,%d,", pCurDocNode->sDocID, pCurDocNode->fWeight, pCurDocNode->iFreq);
				strcat(strbuf, tempbuf);
				/*為了縮小倒排文檔,只最多只寫3個(gè)位置*/
				/*for(i = 0; i < pCurDocNode->iFreq - 1; i++)*/
				for(i = 0; (i < pCurDocNode->iFreq - 1) && (i < 2); i++)
				{
					sprintf(tempbuf, "%d+", pCurDocNode->iPos[i]);
					strcat(strbuf, tempbuf);
				}
				sprintf(tempbuf, "%d,", pCurDocNode->iPos[i]);
				strcat(strbuf, tempbuf);
				sprintf(tempbuf,"%s ", pCurDocNode->sFileURL);
				strcat(strbuf, tempbuf);								
				sprintf(tempbuf,";\n");	
				strcat(strbuf, tempbuf);								
				pCurDocNode = pCurDocNode->pNext;
			}
		}
		pCurIvtIdx = pCurIvtIdx->pNextNode;
	}
	/*將字串內(nèi)容寫入文檔*/
	strcpy(curPFN, sCurDir);
	strcat(curPFN, "\\");
	strcat(curPFN, sFileName);/**/
	sprintf(curFileName, "%s", sFileName);

	if ((stream = fopen(curPFN, "a+")) == NULL)
	{
		/* 若文件不存在, 以創(chuàng)建方式打開文件 */
		stream = fopen(curPFN, "wt");
	}
	else
	{
		/* 若文件已經(jīng)存在,把文件指針指向文件末;
		*  若文件已經(jīng)存在, 且大小超過指定要求,關(guān)閉當(dāng)前文件, 新建文件
		*/
		curFileSize = filesize(stream);
		while (curFileSize >= nKbyte) 
		{
			fclose(stream);
			create_next_file_name(curFileName, &newFileName);
			sprintf(curFileName, "%s",newFileName);
			/*獲得當(dāng)前路徑和名稱*/
			strcpy(curPFN, sCurDir);
			strcat(curPFN, "\\");
			strcat(curPFN, curFileName);

			if ((stream = fopen(curPFN, "a+")) == NULL)
			{
				stream = fopen(curPFN, "w+");
			}
			curFileSize = filesize(stream);
		}
		fseek(stream, 0L, SEEK_END);
	}
	/*將文檔名稱寫入文件*/
	if(WrtFlName(curFileName, sCurDir) != 0)
	{
		printf("wrtfilname error!\n");
		return EINVTWRT;
	}
	/*printf("%s\n",strbuf);*/
	fprintf(stream, "%s", strbuf);
	fclose(stream);

	if(curFileName)
		free(curFileName);
	if(newFileName)
		free(newFileName);
	if(curPFN)
		free(curPFN);
	if (strbuf) {
		free(strbuf);
	}
	if (tempbuf) {
		free(tempbuf);		
	}
	return 0;
}

int wrtlst2file(InvertNode *pCurIvtIdx, char * sFileName, char * sCurDir, long nKbyte)
{
	FILE *stream;
	int bFileExist = -1;
	long curFileSize = 0;
	DocNode *pCurDocNode, *pPreDoc, *ptemp;
	int i, nFileNum = 0;
	int bdown = 0;
	char  *newFileName = NULL, *curFileName, *sIdxname, *curPFN;

	if((pCurIvtIdx == NULL) || (sFileName == NULL) || (sCurDir == NULL) || (nKbyte <= 0))
	{
		printf("error is: %d\n", EWT2FLP);
		return EWT2FLP;
	}
	curFileName = (char*)malloc(sizeof(char)* (20 + strlen(sCurDir)));
	newFileName = (char*)malloc(sizeof(char)* (20 + strlen(sCurDir)));
	sIdxname = (char *) malloc (sizeof(char) * (20 + strlen(sCurDir)));
	curPFN = (char *) malloc (sizeof(char) * ( 20 + strlen(sCurDir)));

	strcpy(curPFN, sCurDir);
	strcat(curPFN, "\\");

	strcat(curPFN, sFileName);/**/

	sprintf(curFileName, "%s", sFileName);
	if ((stream = fopen(curPFN, "a+")) == NULL)
	{
		/* 若文件不存在, 以創(chuàng)建方式打開文件 */
		bFileExist = SENGFALSE;
		stream = fopen(curPFN, "wt");
	}
	else
	{
		/* 若文件已經(jīng)存在,把文件指針指向文件末;
		*  若文件已經(jīng)存在, 且大小超過指定要求,關(guān)閉當(dāng)前文件, 新建文件
		*/
		bFileExist = SENGTRUE;
		curFileSize = filesize(stream);
		while (curFileSize >= nKbyte) 
		{
			fclose(stream);
			create_next_file_name(curFileName, &newFileName);
			sprintf(curFileName, "%s",newFileName);
			/*獲得當(dāng)前路徑和名稱*/
			strcpy(curPFN, sCurDir);
			strcat(curPFN, "\\");
			strcat(curPFN, curFileName);

			if ((stream = fopen(curPFN, "a+")) == NULL)
			{
				stream = fopen(curPFN, "w+");
			}
			curFileSize = filesize(stream);
		}
		fseek(stream, 0L, SEEK_END);
		/* */
	}

	while (pCurIvtIdx != NULL)
	{
		/* 判斷文件是否已經(jīng)超過指定大小 */
		curFileSize = filesize(stream);
		if (curFileSize >= nKbyte) 
		{
			/* 若文件超過指定大小, 則按照規(guī)則新建文件*/
			fclose(stream);
			create_next_file_name(curFileName, &newFileName);
			sprintf(curFileName, "%s",newFileName);

			strcpy(curPFN, sCurDir);
			strcat(curPFN, "\\");
			strcat(curPFN, curFileName);

			stream = fopen(curPFN, "wt");
			curFileSize = 0;
		}
		/*將文檔名字寫入*/
		if(WrtFlName(curFileName, sCurDir) != 0)
		{
			printf("wrtfilname error!\n");
			return EINVTWRT;
		}

		pCurDocNode = pCurIvtIdx->pDocNode;
		bdown = 0;
		if (pCurDocNode != NULL)
		{
			bdown = 1;
			fprintf(stream, "@");
			fprintf(stream, "%s #%d ", pCurIvtIdx->sWords, pCurIvtIdx->lDocNum);
			/*fprintf(idx, "%s ,%s;\n", pCurIvtIdx->sWords, curFileName);		*/
			pPreDoc = pCurDocNode;
			while (pCurDocNode != NULL)
			{
				fprintf(stream, "%s ,%f,%d,",pCurDocNode->sDocID, pCurDocNode->fWeight, pCurDocNode->iFreq);
				for(i = 0; i < pCurDocNode->iFreq - 1; i++)
				{
					fprintf(stream, "%d+", pCurDocNode->iPos[i]);
				}
				fprintf(stream, "%d,", pCurDocNode->iPos[i]);
				fprintf(stream, "%s ", pCurDocNode->sFileURL);
				fprintf(stream, ";\n");
				pPreDoc->pNext = pCurDocNode->pNext;
				ptemp = pCurDocNode;
				pCurDocNode = pPreDoc->pNext;
			}
		}
		fclose(stream);			
		/*釋放當(dāng)前節(jié)點(diǎn)所占的內(nèi)存*/
		pCurIvtIdx = pCurIvtIdx->pNextNode;
	}

	if(curFileName)
		free(curFileName);
	if(newFileName)
		free(newFileName);
	if(sIdxname)
		free(sIdxname);
	if(curPFN)
		free(curPFN);
	
	return 0;
}

/*將英文詞寫入倒排文檔,與中文倒排文檔不同的是英文倒排有兩層目錄
第一層目錄名是單詞的第一個(gè)字母,
第二層目錄名是單詞的第二個(gè)字母,
如果是單個(gè)字母的詞,則直接建在第一層目錄下
入口參數(shù):InvertNode *pCurIvtIdx 倒排表指針
          char * sFileName, 要寫入文件的名字"1.txt"
		  char * sCurDir, 當(dāng)前路徑“e:\\invt\\a”
		  long nKbyte     倒排索引文件大小的最大值
 */
int wrt2engfile(InvertNode *pCurIvtIdx, char * sFileName, const char * sCurDir, long nKbyte)
{
	FILE *stream;
	/*FILE *idx;*/
	int bFileExist = -1;
	long curFileSize = 0;
	DocNode *pCurDocNode, *pPreDoc, *ptemp;
	InvertNode *pPreIdx, *ptempIdx;
	int i, nFileNum = 0;
	char *sTemp;
	int sStrlenth;
	char  *newFileName = NULL, *curFileName, *sIdxname, *curPFN, *Dir;

	if((pCurIvtIdx == NULL) || (sFileName == NULL) || (sCurDir == NULL) || (nKbyte <= 0))
	{
		printf("error is: %d\n", EWT2FLP);
		return EWT2FLP;
	}
	curFileName = (char*)malloc(sizeof(char)* (20 + strlen(sCurDir)));
	newFileName = (char*)malloc(sizeof(char)* (20 + strlen(sCurDir)));
	sIdxname = (char *) malloc (sizeof(char) * (20 + strlen(sCurDir)));
	curPFN = (char *) malloc (sizeof(char) * ( 20 + strlen(sCurDir)));
	sTemp = (char *) malloc (sizeof(char) * MAXWORD);
	Dir = (char *) malloc (sizeof(char) * MAXPATHLEN);

	pPreIdx = pCurIvtIdx;
	while (pCurIvtIdx != NULL)
	{
		/*首先找到所寫的文檔信息應(yīng)該在的路徑*/
		strcpy(sTemp,pCurIvtIdx->sWords);
		sStrlenth = strlen(sTemp);
		if(sStrlenth == 0)
		{
			pPreIdx->pNextNode = pCurIvtIdx->pNextNode;
			ptempIdx = pCurIvtIdx;
			pCurIvtIdx = pPreIdx->pNextNode;
			continue;
		}

		/*如果該單詞只有一個(gè)字母,則在當(dāng)前目錄下記錄*/
		if(sStrlenth == 1)
		{
			strcpy(Dir, sCurDir);
			mkdir(Dir);
			strcpy(curPFN, sCurDir);
			/*得到應(yīng)該得到的文件名字*/
			strcpy(curFileName,sFileName);
			strcat(curPFN, "\\");
			strcat(curPFN,curFileName);
			if ((stream = fopen(curPFN, "a+")) == NULL)
			{
				/* 若文件不存在, 以創(chuàng)建方式打開文件 */
				stream = fopen(curPFN, "wt");
			}
			else
			{
				/* 若文件已經(jīng)存在,把文件指針指向文件末;
				*  若文件已經(jīng)存在, 且大小超過指定要求,關(guān)閉當(dāng)前文件, 新建文件
				*/
				curFileSize = filesize(stream);
				while (curFileSize >= nKbyte) 
				{
					fclose(stream);
					create_next_file_name(curFileName, &newFileName);
					sprintf(curFileName, "%s",newFileName);
					/*獲得當(dāng)前路徑和名稱*/
					strcpy(curPFN, sCurDir);
					strcat(curPFN, "\\");
					strcat(curPFN, curFileName);

					if ((stream = fopen(curPFN, "a+")) == NULL)
					{
						stream = fopen(curPFN, "w+");
					}
					curFileSize = filesize(stream);
				}
				fseek(stream, 0L, SEEK_END);
				/* */
			}
			strcpy(curPFN,sCurDir);
			strcat(curPFN, "\\");
			if(WrtFlName(curFileName, curPFN) != 0)
			{
				printf("wrtfilname error!\n");
				return EINVTWRT;
			}
		}
		/*有一個(gè)以上的字母,為了排除為0的情況*/
		else if(sStrlenth > 1)
		{
			sTemp[0] = sTemp[1];
			sTemp[1] = '\0';
			strcpy(Dir, sCurDir);
			strcat(Dir, "\\");
			strcat(Dir, sTemp);
			mkdir(Dir);
			if(curFileName)
				free(curFileName);
			curFileName = GetWrtFlName(Dir);

			strcpy(curPFN, sCurDir);
			strcat(curPFN, "\\");
			strcat(curPFN, sTemp);
			strcat(curPFN, "\\");
			strcat(curPFN, curFileName);/**/

			if ((stream = fopen(curPFN, "a+")) == NULL)
			{
				/* 若文件不存在, 以創(chuàng)建方式打開文件 */
				bFileExist = SENGFALSE;
				stream = fopen(curPFN, "wt");
			}
			else
			{
				/* 若文件已經(jīng)存在,把文件指針指向文件末;
				*  若文件已經(jīng)存在, 且大小超過指定要求,關(guān)閉當(dāng)前文件, 新建文件
				*/
				bFileExist = SENGTRUE;
				curFileSize = filesize(stream);
				while (curFileSize >= nKbyte) 
				{
					fclose(stream);
					create_next_file_name(curFileName, &newFileName);
					sprintf(curFileName, "%s",newFileName);
					/*獲得當(dāng)前路徑和名稱*/
					strcpy(curPFN, sCurDir);
					strcat(curPFN, "\\");

					strcat(curPFN, sTemp);
					strcat(curPFN, "\\");

					strcat(curPFN, curFileName);

					if ((stream = fopen(curPFN, "a+")) == NULL)
					{
						stream = fopen(curPFN, "w+");
					}
					curFileSize = filesize(stream);
				}
				fseek(stream, 0L, SEEK_END);
				/* */
			}
			strcpy(curPFN, sCurDir);
			strcat(curPFN, "\\");
			strcat(curPFN, sTemp);
			strcat(curPFN, "\\");
			if(WrtFlName(curFileName, curPFN) != 0)
			{
				printf("wrtfilname error!\n");
				return EINVTWRT;
			}
		}

		pCurDocNode = pCurIvtIdx->pDocNode;
		if (pCurDocNode != NULL)
		{
			fprintf(stream, "@");
			fprintf(stream, "%s #%d ", pCurIvtIdx->sWords, pCurIvtIdx->lDocNum);
			pPreDoc = pCurDocNode;
			while (pCurDocNode != NULL)
			{
				fprintf(stream, "%s ,%f,%d,",pCurDocNode->sDocID, pCurDocNode->fWeight, pCurDocNode->iFreq);
				for(i = 0; (i < pCurDocNode->iFreq - 1) && (i < 2); i++)
				{
					fprintf(stream, "%d+", pCurDocNode->iPos[i]);
				}
				fprintf(stream, "%d,", pCurDocNode->iPos[i]);
				fprintf(stream, "%s ", pCurDocNode->sFileURL);
				fprintf(stream, ";\n");
				pPreDoc->pNext = pCurDocNode->pNext;
				ptemp = pCurDocNode;
				pCurDocNode = pPreDoc->pNext;
			}
		}
		fclose(stream);
		/*釋放當(dāng)前節(jié)點(diǎn)所占的內(nèi)存*/
		pPreIdx->pNextNode = pCurIvtIdx->pNextNode;
		ptempIdx = pCurIvtIdx;
		pCurIvtIdx = pPreIdx->pNextNode;
	}
	if(curFileName)
		free(curFileName);
	if(newFileName)
		free(newFileName);
	if(sIdxname)
		free(sIdxname);
	if(curPFN)
		free(curPFN);
	if(sTemp)
		free(sTemp);
	if(Dir)
		free(Dir);
	return 0;
}


int IdxFlWrt(char * sFileName,char * StringBuffer)
{

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三级在线播放| 欧美在线视频全部完| 爽好久久久欧美精品| 日韩理论片在线| 亚洲视频图片小说| 亚洲男同性恋视频| 亚洲精品中文在线影院| 亚洲卡通动漫在线| 亚洲在线免费播放| 日韩一区精品字幕| 日韩国产一区二| 精品中文字幕一区二区| 精品一区二区三区在线播放视频 | 色婷婷激情一区二区三区| 色综合婷婷久久| 欧美日韩久久不卡| 日韩欧美国产1| 国产日韩欧美精品一区| 亚洲天堂网中文字| 亚洲国产你懂的| 精品一区二区三区久久久| 国产盗摄女厕一区二区三区| 99久久久无码国产精品| 91久久精品国产91性色tv| 欧美久久久久久久久中文字幕| 91精品国产乱码| 欧美极品xxx| 亚洲精品成人在线| 免费看欧美女人艹b| 成人一区二区在线观看| 欧美日韩国产精品成人| 久久蜜桃香蕉精品一区二区三区| 国产精品剧情在线亚洲| 亚洲综合免费观看高清完整版在线| 日韩av一区二区在线影视| 国产成人精品三级麻豆| 欧美日韩一区二区在线观看 | 91小视频免费观看| 欧美一区二区三区不卡| 国产精品午夜在线| 天天综合色天天| 成人一区在线观看| 欧美成人综合网站| 国产精品国产三级国产aⅴ入口| 亚洲欧洲日韩av| 美腿丝袜在线亚洲一区| 色综合亚洲欧洲| 欧美激情艳妇裸体舞| 秋霞影院一区二区| 欧洲国产伦久久久久久久| 亚洲国产激情av| 日韩成人一级片| 色狠狠综合天天综合综合| 国产性色一区二区| 蜜臀av一区二区| 色婷婷久久久久swag精品 | 欧美日韩一区二区三区免费看| 久久色视频免费观看| 亚洲一区二区综合| 91亚洲国产成人精品一区二三| 国产亚洲人成网站| 狠狠网亚洲精品| 91精品欧美福利在线观看| 一区二区三区中文在线观看| 成人午夜激情片| 欧美激情一区三区| 韩国av一区二区三区| 精品乱人伦小说| 蜜桃免费网站一区二区三区 | 日韩国产精品久久| 欧美日韩一级片网站| 亚洲精品视频在线| 色综合天天综合给合国产| 亚洲欧洲日韩av| 一本大道久久精品懂色aⅴ| 日韩理论片网站| 日本久久电影网| 一区二区三区国产| 欧美日韩精品一二三区| 亚洲成在线观看| 欧美顶级少妇做爰| 日本 国产 欧美色综合| 精品日韩欧美在线| 久久99这里只有精品| 久久久久9999亚洲精品| 亚洲一区中文日韩| 91精品国产综合久久国产大片| 日韩在线一二三区| 久久亚洲一区二区三区四区| 国产在线观看一区二区| 欧美国产一区在线| 欧美综合久久久| 偷拍日韩校园综合在线| 日韩美女天天操| 国产a久久麻豆| 一区二区免费看| 欧美一个色资源| 国产精品亚洲人在线观看| 中日韩免费视频中文字幕| 在线免费观看不卡av| 美日韩一级片在线观看| 国产日韩精品视频一区| 日本精品免费观看高清观看| 亚洲成人av电影在线| 久久伊99综合婷婷久久伊| 91香蕉视频mp4| 美女网站在线免费欧美精品| 国产欧美日韩在线看| 日本韩国精品一区二区在线观看| 偷拍亚洲欧洲综合| 国产嫩草影院久久久久| 精品视频1区2区3区| 韩国精品主播一区二区在线观看| 亚洲免费观看视频| 欧美成人欧美edvon| 91福利在线看| 国产在线精品免费| 亚洲欧美自拍偷拍色图| 日韩欧美色综合网站| 一本在线高清不卡dvd| 久久精品免费看| 午夜亚洲国产au精品一区二区| 国产欧美日韩另类一区| 91精品国产综合久久精品性色| www.欧美日韩| 国内精品免费**视频| 五月天亚洲婷婷| 亚洲欧美怡红院| 久久久精品中文字幕麻豆发布| 4438x亚洲最大成人网| 91性感美女视频| 成人免费黄色在线| 狠狠色狠狠色综合| 欧美aⅴ一区二区三区视频| 一区二区三区四区视频精品免费| 国产视频一区在线播放| 精品久久人人做人人爰| 欧美精品第1页| 欧美影视一区在线| 日本韩国欧美一区| 一本久久a久久免费精品不卡| 国产精品正在播放| 国产麻豆欧美日韩一区| 久久99国产精品久久| 日本va欧美va欧美va精品| 日韩国产欧美三级| 天堂在线一区二区| 日韩精品一区第一页| 五月天激情小说综合| 无吗不卡中文字幕| 日韩激情中文字幕| 日韩av中文字幕一区二区三区| 亚洲地区一二三色| 视频一区免费在线观看| 午夜精品在线视频一区| 午夜精品123| 日韩精品一二区| 日本伊人色综合网| 男女性色大片免费观看一区二区 | 国产三级久久久| 久久久久久日产精品| 日韩精品一区二区三区中文精品| 3d动漫精品啪啪一区二区竹菊| 欧美男人的天堂一二区| 91精品国产色综合久久| 精品免费一区二区三区| 精品电影一区二区| 欧美国产日韩一二三区| 亚洲欧美日韩人成在线播放| 日韩理论片一区二区| 亚洲高清一区二区三区| 久久精品国产一区二区三| 激情综合网天天干| 9l国产精品久久久久麻豆| 色婷婷久久综合| 日韩三级电影网址| 久久久电影一区二区三区| 亚洲视频电影在线| 三级欧美在线一区| 国产激情91久久精品导航| 一本到三区不卡视频| 91精品国产综合久久国产大片| 欧美精品一区二区精品网| 中文字幕佐山爱一区二区免费| 性感美女久久精品| 国产成人av一区二区三区在线| 日本电影亚洲天堂一区| 日韩视频一区二区| 国产精品久久久久久久久搜平片 | 成人国产精品免费观看视频| 91国内精品野花午夜精品| 日韩美女在线视频| 曰韩精品一区二区| 国模大尺度一区二区三区| 91福利在线播放| 久久久久国色av免费看影院| 亚洲风情在线资源站| 九九热在线视频观看这里只有精品| 91女人视频在线观看| 欧美电影免费观看高清完整版在 |