标签: large-files

裁剪大jpeg

有一个任务,编写一个将文件作为一个JPEG文件的程序.但问题是一些jpeg文件有大尺寸 - 数百兆字节.所以问题是:是否可以裁剪jpeg文件,但不使用像fseek()这样的东西将所有文件加载到RAM中,只解码所需的部分.

那可能吗?如果是的话,也许有些图书馆会这样做.

UPD.所有这些都将用于深度变焦技术.因此,当深度缩放将要求文件时,该程序将提供它,但这应该是实时的

c++ jpeg crop large-files

0
推荐指数
1
解决办法
387
查看次数

将大文本文件加载到R中的列表

所以我的文本文件包含正确格式的数据,它应该在R中的列表中,但它是14 Mb,显然2Mb是一个限制?我需要将此文本文件作为列表加载到R中.

这里有另一篇文章,但该命令(见下文)只是出错了

inlist <- strsplit(readLines("myList.txt"), "[[:space:]]+")
Run Code Online (Sandbox Code Playgroud)

谢谢我的意思是它的样子,因为它在这里是如何开始的

structure(list(inputsTrain = structure(c(-73, -69, -48, 13, -86, -147, -65, -71, -32, 100, -73, -196, -102, 37, 14, 55, ........ 
Run Code Online (Sandbox Code Playgroud)

text r list large-files

0
推荐指数
1
解决办法
1021
查看次数

如何使用c#windows应用程序发送大文件

我正在开发一个Windows应用程序,我需要通过电子邮件发送一些文件作为附件.

public string SendMail(string mFrom,
        string mPass,
        string mTo,
        string mSub,
        string mMsg,
        string mFile,
        bool isDel)
    {
        string sql = "";
        try
        {
            System.Net.Mail.MailAddress mailfrom = new System.Net.Mail.MailAddress(mFrom);
            System.Net.Mail.MailAddress mailto = new System.Net.Mail.MailAddress(mTo);
            System.Net.Mail.MailMessage newmsg = new System.Net.Mail.MailMessage(mailfrom, mailto);
            newmsg.IsBodyHtml = false;
            if (mFile.Length > 2
                && File.Exists(mFile))
            {
                System.Net.Mail.Attachment att = new System.Net.Mail.Attachment(mFile);
                newmsg.Attachments.Add(att);
            }
            newmsg.Subject = mSub;
            newmsg.Body = mMsg;
            System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("smtp.gmail.com", 587);
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = new System.Net.NetworkCredential(mFrom, mPass);
            smtp.EnableSsl = …
Run Code Online (Sandbox Code Playgroud)

c# email large-files winforms

0
推荐指数
1
解决办法
1370
查看次数

使用大字符串构建文件

我们需要构建一个大小约为1MB的大型文本文件.我们尝试使用Echo的shell脚本使用do循环创建文件.建立需要很长时间.

我想在unix/Linux中构建一个文件1行/记录.它可能是一个大小为1MB的大字符串.

内容可能如下所示,但整个兆字节:

XXXXXXXXX............................................XXXX
Run Code Online (Sandbox Code Playgroud)

如果我逐个字符地构建,则需要更长的时间.

我想将此扩展到10MB,20MB ......后来的60MB.

shell脚本是最好的选择,还是有更快的选择?

unix linux string text large-files

0
推荐指数
1
解决办法
2073
查看次数

如何处理大循环

我想在TStringGrid中放一个大字符串,其中每个单元格包含来自字符串的4个字符,StringGrid有16列

nc:=1; nr:=1;     //nc = number of column . nr = number of raw
while fs.Length>0  do   // fs is a large string 
 begin
    if nc>16 then nr:=nr+1; nc:=1; 
 stringgrid.Cells[nc,nr]:=copy(fs,1,4);    
 delete(fs,1,4);
 nc:=nc+1;

PeekMessage(M, Handle, 0, 0, PM_NOREMOVE); // it prevents "not responding"
end;
Run Code Online (Sandbox Code Playgroud)

我如何让它更快:=)

delphi loops large-files tstringgrid

0
推荐指数
1
解决办法
487
查看次数

具有大文件的 Java CRC (Adler)

我有以下情况:一个包含大文件的目录树(大约 5000 个文件,大小约为 4Gb)。我需要在这棵树中找到重复项。

我尝试使用 Java 内置的 CRC32 和 Adler32 类,但它非常慢(每个文件大约 3-4 分钟)。

代码是这样的:

1) Init map <path, checksum>
2) Create CheckSum instance (CRC32 or Adler32);
3) Read file per block (10-100 bytes);
4) In each iteration call update()
5) Result checksum passed in map <path, summ>
6) Find duplicates
Run Code Online (Sandbox Code Playgroud)

问题:有什么方法可以加快第 3-4 行校验和的收集速度吗?

java checksum large-files

0
推荐指数
1
解决办法
2197
查看次数

Perl - 在写入过程中更改文件名

我正在尝试使用我在Perl中创建的非常大的txt文件(超过一百万行)并通过Perl中的不同语句运行它,它基本上看起来像这样(注意以下是shell)

a=0
b=1
while read line;
do
    echo -n "" > "Write file"${b}
    a=($a + 1)
    while ( $a <= 5000)
    do
        echo $line >> "Write file"${b}
        a=($a + 1)
    done
    a=0
    b=($b + 1)
done < "read file"
Run Code Online (Sandbox Code Playgroud)

尝试将其大小调整为每个文件5k行,并每次递增(filename1.txt,filename2.txt,filename3.txt等)
这似乎不适用于shell,可能是由于输入文件的大小,而对于我的生活,我想不出如何在循环中间改变我写的文件.

perl split filesplitting increment large-files

0
推荐指数
1
解决办法
83
查看次数

为什么在使用g ++而不是gcc进行编译时,在stdio.h中定义了_LARGEFILE_SOURCE?

如果使用gcc lfs.c -o lfs编译以下代码,则不会输出任何内容.但是,如果使用g ++ lfs.c -o lfs编译它,则会打印"由stdio.h!"定义的"_LARGEFILE_SOURCE".

#ifdef _LARGEFILE_SOURCE
int largefile_defined_at_start = 1;
#else
int largefile_defined_at_start = 0;
#endif

// This defines _LARGEFILE_SOURCE, but only in C++!
#include <stdio.h>

int main(void) {
#ifdef _LARGEFILE_SOURCE
  if (!largefile_defined_at_start)
    printf("_LARGEFILE_SOURCE defined by stdio.h!");
#endif
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

在任何一种情况下,编译器都没有定义_LARGEFILE_SOURCE:

gcc -dM -E - < /dev/null |grep _LARGEFILE_SOURCE |wc -l
0
g++ -dM -E - < /dev/null |grep _LARGEFILE_SOURCE |wc -l
0
Run Code Online (Sandbox Code Playgroud)

为什么stdio.h在通过g ++前端调用GCC时定义_LARGEFILE_SOURCE?

c c++ gcc large-file-support large-files

0
推荐指数
1
解决办法
299
查看次数

如何将巨大的字节数组保存到azure表存储中?

我有tableEntity包含byte[]属性

[StorageTableName("TestTable")]
public class TestTableEntity : TableEntity
{
    public byte[] Data { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在这个属性中我想把一些文件转换成字节(如果它不正确 - 请建议另一个解决方案).

var table = tableStorage.Table<TestTableEntity>();
await table.CreateIfNotExistsAsync();

var entity = new TestTableEntity 
{
    Data = data, //byte[]
    PartitionKey = partitionKey, //date
    RowKey = schemaName// string
};

await table.InsertOrUpdateAsync(entity);
Run Code Online (Sandbox Code Playgroud)

插入的步骤我得到错误

远程服务器返回错误:(413)请求正文太大并超出了允许的最大限制.

因为数组真的很大.

有什么方法可以解决这个问题吗?

c# arrays azure large-files azure-table-storage

0
推荐指数
1
解决办法
671
查看次数

为什么 dill.dump 的字典列表(81,000,000 字节)需要永远?

我制作了一个 8100000 字节的字典列表,其中包含 900 万多个元素。每个元素都有一个包含 32 对值和键的字典,尽管在每个元素中使用相同的键集。

我想保存它以备将来分析。我已经尝试过 dill.dump,但是我不得不中断内核花了很长时间(超过 1 小时)。这应该是快速而简单的,对吧?

这是我尝试过的:

import dill
output_file=open('result_list', 'wb')
dill.dump(result_list, output_file)
output_file.close()
Run Code Online (Sandbox Code Playgroud)

我也试过泡菜和 bzip2

import bz2
import pickle
output_file=bz2.BZ2File('result_list', 'w')
pickle.dump(result_list, output_file)
Run Code Online (Sandbox Code Playgroud)

但是遇到了内存错误。

有关使此操作可行且耗时更少的任何提示?谢谢!

python dictionary dump large-files dill

0
推荐指数
1
解决办法
453
查看次数

如何比较(比较)两个顺序无关紧要的大型 CSV 文件

我正在努力比较(比较)2 个大型 CSV 文件。

  • 行的顺序并不重要
  • 我不需要打印差异或任何内容,只需打印对或错。

例如:

文件1

a,b,c,d
e,f,g,h
i,j,k,l
Run Code Online (Sandbox Code Playgroud)

文件2

a,b,c,d
i,j,k,l
e,f,g,h
Run Code Online (Sandbox Code Playgroud)

上面应该通过比较,即使行的顺序不同,内容也是相同的。

如果内容不同、列值不匹配或者某一行存在于另一行中,等等,则比较应该失败。

我遇到的最大问题是文件非常大,并且没有可排序的键列。文件有 14 到 3000 万行,大约 10 到 15 列。未排序的原始数据转储约为 1GB 的 csv 文件。

现在我正在尝试使用下面的代码对文件进行排序和“比较”。问题是“排序”并不总是有效。对于较小的文件和较少的行,排序和比较可以工作,但它似乎不适用于非常大的文件。

此外,排序会显着增加操作时间;理想情况下,我想避免排序,只是比较忽略排序顺序,但我不知道该怎么做。

filecmm、difflib 和我尝试过的其他一些函数都需要预先排序的文件。

我现在正在执行 Python 合并排序,但正如我所说,排序不一定适用于大量行,我希望有更好的比较方法。

这是Python的归并排序函数:

def batch_sort(self, input, output, key=None, buffer_size=32000, tempdirs=None):
                if isinstance(tempdirs, str):
                        tempdirs = tempdirs.split(",")

                if tempdirs is None:
                        tempdirs = []
                if not tempdirs:
                        tempdirs.append(gettempdir())

                chunks = []
                try:
                        with open(input,'rb',64*1024) as input_file:
                                input_iterator = iter(input_file)
                                for tempdir in cycle(tempdirs):
                                        current_chunk = list(islice(input_iterator,buffer_size)) …
Run Code Online (Sandbox Code Playgroud)

python diff compare large-files

0
推荐指数
1
解决办法
659
查看次数

需要尽快使用perl创建每个10GB的10,000个文件

我需要创建一些1GB或更高的随机文件(比如100,000).我尝试了打开文件的正常方式,并使用print/syswrite写入它,但它需要超过30分钟.有人可以告诉我任何其他有效的快速方法,我可以在perl中实现它.

random perl file large-files

-3
推荐指数
2
解决办法
167
查看次数