缘起

在清理电脑磁盘的时候,看一看各安装文件夹有占用了多大容量,发现有道词典居然达140MB了,于是进去看看。

发现个有趣的文件:XXX.sql。

首先我们看一看它的安装文件夹的结构:


Dict
    └─Application
        │  guid.dat
        │  Readme.txt
        │  uninst.exe
        │  vendor.dat
        │  YodaoDict.exe
        │
        ├─5.4.43.3217
        │  │  CrashRpt.dll
        │  │  dictcn.db
        │  │  dicten.db
        │  │  doc.tpl
        │  │  guid.dat
        │  │  InstallDaemon.exe
        │  │  Monitor.exe
        │  │  TextExtractorImpl32.dll
        │  │  TextExtractorImpl64.dll
        │  │  Versions.xml
        │  │  WordBook.exe
        │  │  WordStrokeHelper32.dll
        │  │  WordStrokeHelper64.dll
        │  │  XDLL.dll
        │  │  YodaoDict.api
        │  │  YoudaoCookieAssist.exe
        │  │  YoudaoDictInstaller.exe
        │  │  YoudaoDictPlugin.mxaddon
        │  │  YoudaoDictPlugin.sext
        │  │  YoudaoDictPlugin_360.crx
        │  │  YoudaoEH.exe
        │  │  YoudaoWSH.exe
        │  │
        │  ├─intro
        │  │  │  pre.html
        │  │  │  step1.html
        │  │  │  step2.html
        │  │  │  step3.html
        │  │  │  style.css
        │  │  │
        │  │  └─images
        │  │          arrow.png
        │  │          dot.gif
        │  │          sprite.jpg
        │  │          topbar_step_arrow.png
        │  │          topbar_step_bg.png
        │  │
        │  ├─otherskins
        │  │  │  login.bmp
        │  │  │  login.xml
        │  │  │
        │  │  └─simisent
        │  │      │  default.js
        │  │      │  example-similar.html
        │  │      │  jquery.min.js
        │  │      │
        │  │      ├─css
        │  │      │      bg.png
        │  │      │      dict.css
        │  │      │      nav.png
        │  │      │      new-sprite.png
        │  │      │      OffLine.jpg
        │  │      │      s-search-.png
        │  │      │      s-search.png
        │  │      │      similar.css
        │  │      │
        │  │      └─images
        │  │              fangfa1.png
        │  │              fangfa2.png
        │  │
        │  ├─res
        │  │  │  fan.xml
        │  │  │  faq.html
        │  │  │  updater.xsl
        │  │  │
        │  │  ├─images
        │  │  │      image-q1-.gif
        │  │  │      image-q3-.gif
        │  │  │      image-q3-.gif
        │  │  │      laba1.gif
        │  │  │      title_back.gif
        │  │  │
        │  │  └─style
        │  │          global.css
        │  │          updater.css
        │  │
        │  ├─resultui
        │  │  │  commonfile.xsl
        │  │  │  defaultad.html
        │  │  │  exampleresult.xsl
        │  │  │  index.html
        │  │  │  index3.html
        │  │  │  instantresult.xsl
        │  │  │  miniresult.html
        │  │  │  miniresult.xsl
        │  │  │  property.ini
        │  │  │  pup.html
        │  │  │  queryresult.html
        │  │  │  result.xsl
        │  │  │  ss_dict.xsl
        │  │  │  strksrchresult.html
        │  │  │  verifycode.html
        │  │  │  wbblank.html
        │  │  │  wbbrowser.html
        │  │  │  wbfinish.html
        │  │  │  wbreview.html
        │  │  │  wbwelcome.html
        │  │  │  wikiresult.xsl
        │  │  │
        │  │  ├─css
        │  │  │      base.css
        │  │  │      bg-win7.jpg
        │  │  │      bg.jpg
        │  │  │      body-bg.png
        │  │  │      default.css
        │  │  │      loading.gif
        │  │  │      mini.css
        │  │  │      new-sprite.png
        │  │  │      pic-bg.png
        │  │  │      play.png
        │  │  │      stroke.css
        │  │  │
        │  │  ├─images
        │  │  │  │  back.png
        │  │  │  │  background.png
        │  │  │  │  cidian_aqurebutton_close.gif
        │  │  │  │  cidian_aqurebutton_open.gif
        │  │  │  │  cidian_point_empty.gif
        │  │  │  │  cidian_point_solid.gif
        │  │  │  │  confirm.png
        │  │  │  │  defaultAdv.jpg
        │  │  │  │  displaypoint.gif
        │  │  │  │  dont-remember.png
        │  │  │  │  earthpic.jpg
        │  │  │  │  forget-disable.png
        │  │  │  │  forget.png
        │  │  │  │  forget2.png
        │  │  │  │  graypoint.gif
        │  │  │  │  graypointpoint.gif
        │  │  │  │  loading.gif
        │  │  │  │  logo.gif
        │  │  │  │  logo.png
        │  │  │  │  mask.png
        │  │  │  │  newfeaturepic.gif
        │  │  │  │  next.png
        │  │  │  │  next2.png
        │  │  │  │  nomemtime.png
        │  │  │  │  nomemword.png
        │  │  │  │  nosound.GIF
        │  │  │  │  notebook-bg.png
        │  │  │  │  noword.png
        │  │  │  │  OffLine.jpg
        │  │  │  │  outlink.gif
        │  │  │  │  phonetic-down.png
        │  │  │  │  phonetic-hover.png
        │  │  │  │  phonetic.png
        │  │  │  │  pre.png
        │  │  │  │  pre2.png
        │  │  │  │  prev.png
        │  │  │  │  remember-disable.png
        │  │  │  │  remember.png
        │  │  │  │  remember2.png
        │  │  │  │  right-top-sprite.png
        │  │  │  │  sound.png
        │  │  │  │  submitbutton.gif
        │  │  │  │  voice.png
        │  │  │  │  voice.swf
        │  │  │  │  welcome-down.png
        │  │  │  │  welcome-hover.png
        │  │  │  │  welcome.png
        │  │  │  │
        │  │  │  └─NowWaiting
        │  │  │          IMG00000.bmp
        │  │  │          IMG00001.bmp
        │  │  │          IMG00002.bmp
        │  │  │          IMG00003.bmp
        │  │  │          IMG00004.bmp
        │  │  │          IMG00005.bmp
        │  │  │          IMG00006.bmp
        │  │  │          IMG00007.bmp
        │  │  │
        │  │  ├─index
        │  │  │  │  fan.xml
        │  │  │  │  index5.html
        │  │  │  │  lj5.html
        │  │  │  │  wiki5.html
        │  │  │  │
        │  │  │  ├─css
        │  │  │  │  │  index.css
        │  │  │  │  │
        │  │  │  │  └─index
        │  │  │  │          bg.jpg
        │  │  │  │          bg.png
        │  │  │  │          button.png
        │  │  │  │          button_toggle.png
        │  │  │  │          down.png
        │  │  │  │          hover.png
        │  │  │  │          index.png
        │  │  │  │          stroke-tips.png
        │  │  │  │
        │  │  │  ├─images
        │  │  │  │      .jpeg
        │  │  │  │      .jpeg
        │  │  │  │      baike.jpg
        │  │  │  │      examples.jpg
        │  │  │  │
        │  │  │  └─js
        │  │  │          all-min.js
        │  │  │
        │  │  └─js
        │  │          all-min.js
        │  │          wordBook.js
        │  │
        │  └─skins
        │      │  bg-win7.jpg
        │      │  default.css
        │      │  default.png
        │      │  defaultWin7.css
        │      │  popup.bmp
        │      │  wb.bmp
        │      │  win7-default.bmp
        │      │  win7-default.xml
        │      │  xp-default.bmp
        │      │  xp-default.xml
        │      │
        │      └─Loading
        │              IMG00000.bmp
        │              IMG00001.bmp
        │              IMG00002.bmp
        │              IMG00003.bmp
        │              IMG00004.bmp
        │              IMG00005.bmp
        │              IMG00006.bmp
        │              IMG00007.bmp
        │              IMG00008.bmp
        │              IMG00009.bmp
        │              IMG00010.bmp
        │              IMG00011.bmp
        │
        ├─Localdicts
        │      21EC.ydic
        │      basicCE.ydic
        │      basicEC.ydic
        │      CE.idx
        │      CE.ifo
        │      EC.idx
        │      EC.ifo
        │      newCE.ydic
        │      phrase.ydic
        │      sentenceDict.sql
        │
        └─Stable
            │  Acrobat2Dict.dll
            │  YDChromeTextExtractor.crx
            │  YoudaoGetWord32.dll
            │  YoudaoGetWord64.dll
            │
            └─extensions
                └─firefox
                    │  chrome.manifest
                    │  install.rdf
                    │  YDFFMiddleware.dll
                    │
                    └─chrome
                        └─content
                                getword.js
                                main.xul
                                

结构

发现一个以sql为后缀名的文件,一开始还以为是SQL脚本。但大小为:40.9MB,觉得不太可能了。即:"...\Dict\Application\Localdicts\sentenceDict.sql"

用UltraEdit打开(用记事本打开,内存小的话会卡住)

看到有关键字:SQLite format... 原来是SQLite类型的开源数据库。

SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至今已经有12个年头,SQLite也迎来了一个版本 SQLite 3已经发布。

官网:SQLite Home Page  http://www.sqlite.org/

使用 SQLlite Database Browser 打开:

可执行SQL语句:

可以看出,它包含的主要是句子内容,应该只是其中一个数据库,其它的本地数据库可能在同文件夹中的其他文件。

一点想法:

如果用winform写一个读取该文件的查询器,是否可以写个像词典的东西呢?

在有道词典程序文件夹发现一个后缀名为sql的数据库(SQLite)的更多相关文章

  1. 【应用】_有道词典客户端一个后缀名为sql的数据库。

    [缘起] 在清理电脑磁盘的时候,看一看各安装文件夹有占用了多大容量,发现有道词典居然达140MB了,于是进去看看. 发现个有趣的文件:XXX.sql. 首先我们看一看它的安装文件夹的结构: Dict ...

  2. java实现批量修改指定文件夹下所有后缀名的文件为另外后缀名的代码

    java实现批量修改指定文件夹下所有后缀名的文件为另外后缀名的代码 作者:Vashon package com.ywx.batchrename; import java.io.File; import ...

  3. c# 控制台应用程序批量修改文件夹下的后缀名(包括子文件夹)

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...

  4. ASP.NET MVC - 探究应用程序文件夹

    为了学习 ASP.NET MVC,我们将构建一个 Internet 应用程序. 第 2 部分:探究应用程序文件夹. MVC 文件夹 一个典型的 ASP.NET MVC Web 应用程序的文件夹内容如下 ...

  5. Inno setup 卸载时删除程序文件夹(文件)

    Inno setup 卸载时删除程序文件夹(文件) //删除所有配置文件以达到干净卸载的目的 procedure CurUninstallStepChanged(CurUninstallStep: T ...

  6. ASP.NET MVC 4应用程序文件夹

    App_Start It has configuration classes to reduce clutter code in the Global.asax 它包含了配置类来减少在Global.a ...

  7. WIN7使用过360系统急救箱后出现的任务计划程序文件夹删除的办法

    直接进主题(怀疑系统有问题用了下360系统急救箱,用完后发现计划任务多了个360superkiller文件夹,右键直接是删除不了的) 尝试了各种方法都是不爽,突然想到计划任务不是在在系统盘下的一个文件 ...

  8. 动手动脑-------找出指定文件夹下所有扩展名为.txt和.java的文件

    思路:首先向获取文件,如果是文件的话,则判断它是否以".txt"或".java"结尾,如果是则输出它的路径.如果是文件夹的话,则需获取子文件,利用递归方法遍历子 ...

  9. JS截取后缀名,文件全名,非后缀名的方法---收藏(冷饭_)

    <script language="javascript" type="text/javascript"> //取整个文件的路径并且把文件名赋给文件 ...

随机推荐

  1. Java中堆、栈,静态方法和非静态方法的速度问题

           一.堆和栈的速度性能分析 堆和栈是JVM内存模型中的2个重要组成部分,自己很早以前也总结过堆和栈的区别,基本都是从存储内容,存储空间大小,存储速度这几个方面来理解的,但是关于堆和栈的存储 ...

  2. mysql基础 反范式化

  3. oauth2.0协议接口-第一篇-api逻辑

    开放平台是支持OAuth2.0和RESTful协议的资源分享平台,经过授权的合作伙伴可以读取和写入资讯.用户.文件.数据库等资源. 1.创建数据库表结构 CMSSyncClient(数据同步客户端) ...

  4. 传输控制协议(TCP)

    传输控制协议(TCP)[来自Unix网络编程(卷一)第2章] 1.TCP是一个面向连接.可靠性的传输协议: 2.TCP含有用于动态估算客户与服务器之间往返时间(RTT)的算法,以便它知道等待一个确认需 ...

  5. js三目运算符执行多个条件

    三元运算符的结果语句可以执行多个操作,每个操作用逗号分隔就可以,例子如下: var a=1: a>5?(alert(1),alert(2)):(alert(3),alert(4))

  6. hasattr() & getattr() & setattr()

    Python的hasattr() getattr() setattr() 函数使用方法详解   感谢作者 ---> 原文链接 hasattr(object, name) 判断一个对象里面是否有n ...

  7. 变量存储类型(auto static extern)

    auto 动态存储类型变量(函数内部变量存储默认为 auto型) auto只用于函数内部定义,单片机在执行这个函数时为它分配内存地址,当函数执行完毕返回后,auto变量会被销毁,再次进入这个函数时,它 ...

  8. Android stadio 模板 liveTemplate不管用

    今天自己弄了模板,发现不生效.后来才知道要在下面设置在哪里应用:如下图: Android satdio 制作自己的todo 有时候,别人都使用todo,使得自己个人的todo不好用了.那么怎么弄?自己 ...

  9. django中间件CsrfViewMiddleware源码分析,探究csrf实现

    Django Documentation csrf保护基于以下: 1. 一个CSRF cookie 基于一个随机生成的值,其他网站无法得到.此cookie由CsrfViewMiddleware产生.它 ...

  10. KVO的底层实现原理?如何取消系统默认的KVO并手动触发?

    KVO是基于runtime机制实现的 当某个类的属性对象第一次被观察时,系统就会在运行期动态地创建该类的一个派生类(该类的子类),在这个派生类中重写基类中任何被观察属性的setter 方法.派生类在被 ...