标签: document

在内存中保存大型可编辑文档的最佳方法

我需要在内存中保存文档的表示,并且正在寻找最有效的方法来执行此操作.

假设

  • 文档可能非常大,高达100MB.
  • 通常情况下,文档将保持不变 - (即我不想进行不必要的预先处理).
  • 更改通常在文档中彼此非常接近(即,作为用户类型).
  • 应该可以快速应用更改(不复制整个文档)
  • 更改将应用​​于偏移量和新/删除的文本(而不是行/列).
  • 在C#中工作

目前的考虑

  • 将数据存储为字符串.易于编码,设置快速,更新速度非常慢.
  • 行数组,模式易于编码,设置较慢(因为我们必须将字符串解析为行),更新速度更快(因为我们可以轻松插入删除行,但查找偏移量需要求和行长度).

对于这种事情,必须有大量标准算法(这不是一百万英里的磁盘分配和碎片).

谢谢你的想法.

c# string algorithm document data-structures

5
推荐指数
2
解决办法
587
查看次数

如何替换窗口/ iframe的文档对象

我需要在iframe窗口中注入我之前实例化的文档对象,并且我无法将其序列化为字符串或远程URL(这些是先前stackoverflow帖子上提出的解决方案),因为此文档对象的元素绑定到其他对象在我的代码中.

我该怎么做 ?

谢谢,b.

javascript dom document object code-injection

5
推荐指数
1
解决办法
2265
查看次数

使用DjVu工具进行背景/前景分离?

我最初正在研究开发自己的背景去除算法,但看起来流行的文档格式DjVu有自己的前景/背景分离功能,如果我只能理解如何使用它.

引用DjVu文档:

DjVu有3种基本的"模式":

  1. DjVuText - 黑白(双色)文档
  2. DjVuPhoto - 连续色调图像,如照片,扫描图形艺术等.
  3. DjVuLayered - 彩色文档,如杂志,目录,历史文档等.

使用DjVuLayered模式压缩到DjVu 将生成30KB到100KB之间的文件,其中5到40KB将用于前景层,其余用于背景和图片.

对于软件集成:

DjVuLibre包括一个独立的查看器,一个浏览器插件(用于Mozilla,Firefox,Konqueror,Netscape,Galeon和Opera),以及命令行工具(解码器,编码器,实用程序).

有关如何使用DjVu工具分离给定扫描文档的背景和前景的任何想法?

automation background document image image-processing

5
推荐指数
1
解决办法
1646
查看次数

文档数据库中架构更改的模式

在我开始之前,我想为我的问题的相当普遍的类型道歉 - 我确信整本书可以写在那个特定主题上.

让我们假设您有一个包含多个文档模式的大型文档数据库,以及每个模式的数百万个文档.在应用程序的生命周期中,需要经常更改已存储文档的模式(和内容).

这样的改变可能是

  • 添加新字段
  • 重新计算字段值(将总净额分成净额和增值税)
  • 放下字段
  • 将字段移动到嵌入的文档中

我我在这里我们使用了SQL数据库,我们在导致一些显著的离线时间(24/7产品)时的变化成为了激烈的SQL数据块通常会做一个表上的LOCK发生更改时一些非常相似的challanges最后一个项目.我想避免这种情况.

另一个相关问题是如何在使用的编程语言环境中处理模式更改.通常通过更改类定义来发生模式更改(我将使用Mongoid为MongoDB和Ruby使用OR-Mapper).如何处理不符合我最新类定义的旧版本文档.

database schema document

5
推荐指数
1
解决办法
1074
查看次数

如何使用Mercurial进行文本文档的版本控制?

这不是一个编程问题,但我认为它比TeX组更适合这里

我想使用版本控制保持文本文件的变化轨迹(这是用来创建LaTeX输出.(因为我不是程序员,我没有与版本控制系统,更深入的体验.)我想使用Mercurial的那,我正在研究MacOS X 10.6.

这些文件是关于作业应用程序的,因此每个公司大多有3个文件:

  • 一封动力的信
  • 简历
  • 和一份文凭,证书,......

我有几个关于实际问题的问题:

  1. 我已经有一个包含许多子目录的目录(每个公司一个).每个子目录包含那些2或3*.tex文件以及辅助文件和生成的pdf.(有时还有一些其他文件包含有关公司的信息).
    如果我想在新存储库中添加已存在的文件并从每个文件创建一个版本(大约有15个不同的版本),我该怎么做?
    当然,"父母"和"孩子"的关系是不可见的,但至少我可以做一个差异,看看有什么变化,每个人都有一个修订号.
  2. 我可以将这些文件保留在原始目录中并将它们添加到版本控制系统中,还是必须放在特殊的位置?
    (我想在这些目录中添加其他文件,这些文件不会添加到版本控件中,我想知道
  3. 我可以给修订版(例如公司名称)一个"名称",以便以后更容易找到它们吗?
  4. 创建新修订版的最佳工作流程是什么?
    我从存储库中选择一个现有的修订版,将其导出到新公司的新文件夹,更改tex文件,然后将其提交回repo ?!

version-control mercurial latex document version

5
推荐指数
2
解决办法
5068
查看次数

文件类型苦难 - 可可

因此,我们最近发布了一个基于文档的应用程序,其中包含一个不幸的疏忽:我们的主文档类型的UTI留空了.我们有一个名字,但标识符是空的.

一切仍然很好,但后来我们去添加另一种文件类型.新文件类型只是xml(符合public.xml).我们将其设置并将其放入文档中.这是我们对第一个文档类型的UTI进行监督的时候.

现在,如果我们触摸这个文档类型,BOOM.应用程序无法读取它创建的该类型的任何文件.我们真的想要清理它,那么最好的方法是什么?

我的问题基本上是:如何在基于文档的应用程序中迁移主文档类型?

filesystems macos cocoa document

5
推荐指数
0
解决办法
273
查看次数

Android如何在gallary中查看sdcard中的doc?

我有应用程序,用户可以从SD卡搜索图像,音频,视频,doc文件,并选择1个文件上传它在服务器上.使用下面的代码我可以打开图库并选择图像,音频,视频但我不知道如何从库中搜索文档.

这是我的代码.

    Intent intent = new Intent();
    intent.setAction(Intent.ACTION_GET_CONTENT);
    //intent.setType("video/*");
    //intent.setType("audio/*");
    //intent.setType("image/*");
    //**What I have to do for view document[.pdf/text/doc] file**
    startActivityForResult(Intent.createChooser(intent, "Complete action using"), REQUEST_CODE);
Run Code Online (Sandbox Code Playgroud)

有谁知道如何实现这一目标?任何帮助是极大的赞赏.

search android document gallery sd-card

5
推荐指数
1
解决办法
1242
查看次数

MongoDB将文档预加载到RAM中以获得更好的性能

我希望MongoDB将查询结果保存在RAM中更长的时间(如果内存可用,则说30分钟).可能吗?或者有什么方法可以确保在后续查询之前将数据预先加载到RAM中.

事实上,我想知道MongoDB的简单查询结果.我有一个10GB RAM的专用服务器,我的db.stats()如下所示;

db.stats();
{
    "db": "test",
    "collections":16,
    "objects":625690,
    "avgObjSize":68.90,
    "dataSize":43061996,
    "storageSize":1121402888,
    "numExtents":74,
    "indexes":25,
    "indexSize":28207200,
    "fileSize":469762048,
    "nsSizeMB":16,
    "ok":1
}
Run Code Online (Sandbox Code Playgroud)

现在,当我从Web服务查询单个文档(如此处所述)时,它将在1.3秒内加载.后续调用相同的查询会在400毫秒内给出响应,然后在几秒钟之后,它再次开始耗时1.3秒.看起来MongoDB已经从Memory中丢失了先前查询的文档,因为没有其他查询要求将数据映射到RAM.

请解释一下,让我知道如何使后续查询更快地响应.

memory performance document preload mongodb

5
推荐指数
1
解决办法
8003
查看次数

从HTML文档获取值

我可以帮忙从HTML文档中获取价值吗?

这是文档内容:

<html>
  <head>
    <style>body, table, input, select, textarea, button {   font: normal 1em Verdana, Sans-Serif; } body {  font-size: 0.8em; } a { color:#336600; } b { color:#003300; }.header {font-family: verdana; font-size: 15px; color:#003300; font-weight:bold;}.back {background-color:#DBF0DB;}.back2 {background-color:#009933;}            
    </style>
  </head>
  <body>
    <table border="0" cellpadding="3" cellspacing="1" width="100%">
      <tr>
        <td colspan="2" class="header">#827216</td>
      </tr>
    </table>
<body>
</html> 
Run Code Online (Sandbox Code Playgroud)

我想检索#827216值。

这是我正在使用的代码,无法正常工作:

hdoc.LoadHtml(FileContents);

var xID = hdoc.DocumentNode.SelectNodes("/html/body/table/tr/");
Run Code Online (Sandbox Code Playgroud)

这是错误:

表达式必须计算为节点集

html c# document nodes html-agility-pack

5
推荐指数
1
解决办法
1321
查看次数

Android应用 - 如何写入Android设备的Documents文件夹?

我想在我的Android应用程序中创建一个XML文件.这个文件我要写入我的Android设备的文档文件夹中.后来我想使用USB将我的Android设备连接到我的PC并从文档文件夹中读取该XML文件.我的设备是Android Galaxy Tab Pro 10.1,Android 4.4.2.

我已经尝试过:

String fileName = "example.xml";
String myDirectory = "myDirectory";

String externalStorage = Environment.getExternalStorageDirectory().getAbsolutePath();

File outputFile = new File(externalStorage + File.separator + myDirectory + File.separator + fileName);
Run Code Online (Sandbox Code Playgroud)

但是没有创建文件.我还想稍后再将文件文件夹中的文件读入may app.

任何帮助表示赞赏,谢谢!

directory android document

5
推荐指数
3
解决办法
2万
查看次数