Tag: 大文件

Java:读取HUGE文件的最后n行

我想读一个非常大的文件的最后n行,而不使用Java将整个文件读入任何缓冲区/内存区域。 我环顾了JDK API和Apache Commons I / O,无法find适合于此目的的应用程序。 我正在考虑在UNIX中使用tail还是less。 我不认为他们加载整个文件,然后显示文件的最后几行。 在Java中也应该有类似的方法来做同样的事情。

在Linux C ++应用程序中寻找和读取大文件

我正在使用G ++中的标准ftell和fseek选项运行到整数溢出,但我想我错了,因为似乎ftell64和fseek64不可用。 我一直在寻找和许多网站似乎引用使用lseek与off64_t数据types,但我还没有find任何引用的东西等于fseek的例子。 目前我正在阅读的文件是16GB + CSV文件,预计至less会翻一番。 没有任何外部库,与fseek / ftell对实现类似结构最直接的方法是什么? 我现在的应用程序正在使用4.x的标准GCC / G ++库。

在C#中读取和parsingJson文件

我已经花费了两天的时间,用代码示例等等的方法来尝试读取一个非常大的JSON文件到C#中的数组中,所以我可以稍后将其分成2维数组进行处理。 我遇到的问题是我找不到任何人在做我正在做的事情的例子。 这意味着我只是编辑代码有点希望最好的。 我已经设法得到一些工作,将会: 读取文件错过标题,只读取数组中的值。 在数组的每一行放置一定数量的值。 (所以我可以稍后分成一个放入二维数组) 这是用下面的代码完成的,但是在数组中input几行后,程序崩溃了。 这可能与文件大小有关。 // If the file extension was a jave file the following // load method will be use else it will move on to the // next else if statement if (fileExtension == ".json") { int count = 0; int count2 = 0; int inOrOut = 0; […]

对大型XML文件使用Python Iterparse

我需要用Python编写一个parsing器,它可以在没有太多内存(只有2 GB)的计算机上处​​理一些非常大的文件(> 2 GB)。 我想在lxml中使用iterparse来做到这一点。 我的文件的格式是: <item> <title>Item 1</title> <desc>Description 1</desc> </item> <item> <title>Item 2</title> <desc>Description 2</desc> </item> 到目前为止我的解决scheme是: from lxml import etree context = etree.iterparse( MYFILE, tag='item' ) for event, elem in context : print elem.xpath( 'description/text( )' ) del context 不幸的是,这个解决scheme仍然消耗了大量的内存。 我觉得问题是,在处理好每一个“项目”之后,我需要做些什么来清理空的孩子。 任何人都可以提供一些build议,我可以做什么后,处理我的数据妥善清理?

有没有一种高效,快速的方式来加载python中的大json文件?

我有一些500MB的JSON文件。 如果我使用“简单的”json.load一次加载它的内容,将消耗大量的内存。 有没有办法部分读取文件? 如果这是一个文本,行分隔文件,我将能够遍历行。 我正在寻找比喻。 有什么build议么? 谢谢

获取超过10行的超大文本文件> 10GB

什么是最有效的方式来显示一个非常大的文本文件的最后10行(这个特定的文件超过10GB)。 我只是想写一个简单的C#应用​​程序,但我不知道如何有效地做到这一点。

在PHP中处理大型的JSON文件

我正在尝试处理有些大(可能高达200M)的JSON文件。 该文件的结构基本上是一个对象的数组。 所以有如下几点: [ {"property":"value", "property2":"value2"}, {"prop":"val"}, … {"foo":"bar"} ] 每个对象都具有任意的属性,并且不需要与数组中的其他对象共享它们(如同样具有相同的属性)。 我想对数组中的每个对象应用一个处理,并且由于这个文件可能很大,所以我不能在内存中search整个文件内容,解码JSON并遍历PHP数组。 所以理想情况下,我想读取文件,为每个对象获取足够的信息并处理它。 如果有类似的JSON库可用,SAXtypes的方法可以。 任何build议如何处理这个问题最好?

在PHP中parsing巨大的XML文件

我试图将DMOZ内容/结构XML文件parsing到MySQL中,但是所有现有的脚本都是非常旧的,并且不能很好地工作。 我怎样才能在PHP中打开一个大的(+ 1GB)XML文件进行parsing?

文本编辑器打开大(巨大,巨大,大)的文本文件

我的意思是100 + MB大; 这样的文本文件可以推动编辑的信封。 我需要浏览一个大的XML文件,但是如果编辑器是越野车,则不能。 有什么build议么?

用C#中的stream读取大文本文件

我有一个可爱的任务,即如何处理大文件被加载到我们的应用程序的脚本编辑器(这就像我们的内部产品快速macros的VBA )。 大多数文件大约300-400 KB这是很好的加载。 但是当他们超过100 MB时,这个过程很难(如你所期望的)。 会发生什么是该文件被读取并推入一个RichTextBox,然后导航 – 不要太担心这个部分。 编写初始代码的开发人员只需使用StreamReader即可 [Reader].ReadToEnd() 这可能需要很长时间才能完成。 我的任务是打破这一点的代码,阅读成块缓冲区,并显示一个进度条,并取消它的选项。 一些假设: 大多数文件将是30-40 MB 文件的内容是文本(不是二进制),有些是Unix格式,有些是DOS。 一旦内容被检索,我们计算出使用了什么终止符。 一旦加载了在richtextbox中渲染所需的时间,就不会有人担心。 这只是文本的初始负载。 现在提问: 我可以简单地使用StreamReader,然后检查Length属性(如ProgressMax),并发出一个读取设置的缓冲区大小,并在while循环WHILST内循环遍历一个后台工作,所以它不会阻止主UI线程? 然后在完成之后将stringbuilder返回到主线程。 内容将会转到一个StringBuilder。 如果长度可用,我可以初始化StringBuilder与stream的大小? 这些(在你的专业意见)好主意? 过去我曾经从Streams中读过一些内容,因为它总是会丢失最后的几个字节,但是如果是这样的话,我会问另外一个问题。