24小时热门版块排行榜    

查看: 663  |  回复: 7

liusinuo

木虫 (小有名气)

[求助] 倾尽所有积分,求如何截取一个6G大的文件中指定行并生成新的文件 已有3人参与

各位大神,我现在有个6G大的文件,里面共五百多万行,以大括号分行,见下,最后两行其实为一行,因为都在一个大括号里
{(23,23,3),(4,34,54),(23,343,43),(23,23,54)}
{(23,23,3),(4,34,54),(23,343,43),(23,23,54)}
{(23,23,3),(4,34,54),(23,343,43),(23,23,54),(454,56),(3,456,78),
(34,34,45),(45,54,676),(23,45,45)}
我现在想用ultraedit按行截取该文件,并生成几个新的文件,请大神帮忙!或者用其他工具和编程方法也行,比如matlab、Python等、、、跪谢!!
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

你6G文件什么格式? 推测是txt格式??

选取的行有什么特征?区别于其它行?
ส็็็็็็็็็็็็็็็็็็็็
2楼2014-08-30 10:37:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

NicoleLas

木虫 (正式写手)

还没有用UltraEdit打开过这么大的文件呢..............我也不是很熟悉。
Be water, my friend.
3楼2014-08-30 10:45:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liusinuo

木虫 (小有名气)

引用回帖:
2楼: Originally posted by cooooldog at 2014-08-30 10:37:54
你6G文件什么格式? 推测是txt格式??

选取的行有什么特征?区别于其它行?

是PKL格式的,行没有特征,只是行与行之间是用大括号{}分开的~~
4楼2014-08-30 11:52:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hytao2012

铁杆木虫 (正式写手)

木头虫子

【答案】应助回帖

感谢参与,应助指数 +1
对读取数据不是太熟,大致是这样的
% 读取的数据存储到data里
clear; clc;
readrows=2; % 读取行数
startrow=3; % 起始读取位置
FileName='123.pkl'; % 要读取的文件
fid=fopen(FileName, 'r');
data=textscan(fid,'%s',readrows,'headerlines',startrow-1); % 逐点读取数据
fclose(fid);
5楼2014-08-30 21:08:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z8261337

新虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
按行读取的话,可以这样,开一个线程,每次读取固定大小的文件,比如512k,读进来后就放到一个文件块列表里,列表大小固定,每个文件块编个序号。
然后,开多线程,对列表里的文件块进行处理,查找{}找出一行一行的数据,遇到结尾的半行数据就和
比当前文件块编号大1的文件块首行合并。

[ 发自手机版 http://muchong.com/3g ]
6楼2014-08-31 10:54:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Eumenidez

新虫 (初入文坛)

能不能这样:
from numpy import *
a=load('***.pkl')
a[0]-a[n]就是你所有行的数据
再根据你的需求进行合并组成新的矩阵?
7楼2014-12-08 21:41:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xwteamobj007

木虫 (著名写手)

【答案】应助回帖

自己用Fortran或者C写一个小程序读一下不就行了。
8楼2015-02-09 08:50:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 liusinuo 的主题更新
信息提示
请填处理意见