Google App Engine:如何将上传的文本文件保存到Blob中,然后逐行读取?

问题描述:

我有一个庞大的文件(超过16,000行),我想保存在数据存储中以供稍后解析。每行包含一个实体的信息。Google App Engine:如何将上传的文本文件保存到Blob中,然后逐行读取?

如何从存储的Blob中逐行读取?

我似乎无法在任何地方找到有关Blob的良好教程或文档。 GAE只显示如何处理图像,但我想读取存储的文本文件。

+0

我假设你正在谈论Blobstore API,它具有与Images API一起使用的文档。您的应用程序无法以任何其他方式与Blobstore数据> 1MB进行交互;访问smaler blob的唯一方法是使用urlfetch,它具有1MB的限制。 – geoffspear 2010-02-07 19:16:49

使用Texttype来存储它而不是blob。文本的大小没有限制,但不可索引或可查询。

所以,如果你想要的是顺序逐行访问数据,它将完美工作。

如果您只是需要从团块的线条,只是做:

lines = blob.split("\n") 

如果你需要像对待一个文件中的一滴,做到:

fh = StringIO.StringIO(blob)