怎么将文本文件导入数据库 | 您所在的位置:网站首页 › 怎么将sql文件导入数据库 › 怎么将文本文件导入数据库 |
怎么将文本文件导入数据库 本文以单词文件为例说明导入数据库的具体过程,如 步骤: 第一步:先将该文件中单词与解释的分割符换成 “|”,并去掉它们之间的所有空格。 #include #include #include #include int main(int argc, char const *argv[]) { char buf[512] = {}; int asc; //创建或打开文件 FILE *fp1 = fopen("dict.txt", "r+"); FILE *fp2 = fopen("dictfuben.txt", "w"); while (1) { //主要拷贝单词,和处理单词和解释之间的分界 while (1) { //挨个字符读取单词文件中的字符 asc = fgetc(fp1); //判断是否是空格 //是空格 if (asc == ' ') { //将文件指针移到在空格前面,单词的后面 fseek(fp1, -1, SEEK_CUR); fputc('|', fp2); //写入分隔符 //让文件指针向后移动,直到所有移动到,单词与解释之间所有空格 的后面 while (1) { asc = fgetc(fp1); if (asc != ' ') break; //删去多余空格 } break; } //结束符 else if (asc == EOF) break; //其他字符则将该字符拷贝到123.txt文件中,这里拷贝的是单词 fputc(asc, fp2); } fseek(fp1, -1, SEEK_CUR); //此处需要向前移动一个位置,否则会吞掉一个字符 //将解释拷贝到123.txt文件中 while (1) { fgets(buf, sizeof(buf), fp1); fputs(buf, fp2); if (buf[strlen(buf) - 1] == '\n') break; } //如果读到文件结束符,退出 if (asc == EOF) break; } fclose(fp1); fclose(fp2); remove("dict.txt"); //删除原文件 rename("dictfuben.txt", "dict.txt"); //将临时文件名改为原文件名 return 0; }处理之后,单词的文本文件 第二步:将文件中所有的双引号( “”)替换成单引号( ‘’),来保证正确插入到数据库表中使用vi编辑器的底行模式的字符串替换指令来实现。 1)使用vi编辑器打开单词的.txt文件 2)查找单词文件中的双引号(”“) ,来查看是否存在双引号(”“)存在的话则用vi编辑器中字符串替换命令替换查找: :/" 3)替换命令利用vi编辑器中的字符串替换命令,将单词文件中的双引号(”“)替换成单引号(‘’),来保证正常插入 :%s/"/'/g 4)保存并退出 :wq 第三步。在命令行中,创建该数据库,并创建一个空的单词表 1)创建数据库sqlite3 数据库名.db sqlite3 dictc.db 2)创建空的单词表create table 表名(表列名 列数据项的数据类型); sqlite> create table dict(word char,explain char); 第四步:设置数据库表中的各个列以竖杠(|),分割 sqlite> .separator "|" 第五步:查看是否设置成功 sqlite> .show出现这种情况,表示设置成功 第六步:将单词文本中的内容导入到我们指定的数据库对应的表中.import 待导入文本文件名 数据库表名 sqlite> .import dict.txt dict导入前,数据库该单词表为空 导入后,数据库该单词表中的内容以被文本文件内容填充 导入成功 |
CopyRight 2018-2019 实验室设备网 版权所有 |