2012-06-08 326 views
3

我正在使用python寫入文件。腳本突然停止運行,並拋出'IOError:[Errno 27]文件太大' 對於允許使用程序創建的文件的大小是否有限制? 有沒有其他人遇到過這個問題? 停止時文件大小接近4.3Gb(有點大)。文件太大python

+8

它沒有碰到4294967295字節(即2^32-1)做到了? –

+1

我剛剛檢查了文件大小,它是4.3 GB(4,294,967,295字節) – viper

回答

5

Python bug report表示操作系統是此錯誤消息的來源,而不是Python。

由於您正在寫入FAT分區,並且FAT 32(LinuxFilesystemsExplained)的最大文件大小限制爲4GB,因此這很可能是問題的原因。在不同的文件系統上運行你的系統或分區的程序會肯定地告訴你。

+0

@MarcoMariani我看到了,你有沒有看到第二和第三篇文章? – Levon

+0

我的帳戶沒有文件大小限制,我使用指定的ulimit命令[here](http://www.cyberciti.biz/faq/file-size-limit-exceeded-error-under-linux-and-解/)。文件大小說無限 – viper

+0

一個可能的解釋是在該評論部分(由用戶名'克里斯'第二評論)該[鏈接](http://www.cyberciti.biz/faq/file-size-limit-exceeded-error- under-linux-and-solution /)它說fat fs只支持高達4GB的文件大小。我正在寫的分區很胖。 – viper

2

當文件變得太大時,尋址成爲一個問題。通常你會得到32比特,這意味着最大的大小約爲4GB。

0

當我在一個目錄中有太多文件時,我也有這個錯誤。我在一個目錄中有64435文件,每個文件的名稱中都帶有10個數字+'.json',並且任何後續嘗試將新文件寫入目錄會導致錯誤(例如)OSError: [Errno 27] File too large: 'ngrams/0/0/0/0000029503.json'