Python - tempfile. TemporaryFile не может быть считан; почему?

Зависит от того, что Вы подразумеваете под катастрофическим отказом.

можно сделать бесконечную рекурсию, чтобы заставить его исчерпать стековое пространство, но это откажет "корректно". Вы получите исключение, но сама JVM будет обрабатывать все.

можно также использовать JNI для вызова собственного кода. Если Вы не делаете этого просто прямо тогда, можно заставить его отказать трудно. Отладка тех катастрофических отказов является "забавой" (доверяйте мне, я должен был записать рак ++ DLL, который мы называем от апплета Java со знаком).:)

21
задан Reinstate Monica 29 July 2009 в 20:31
поделиться

2 ответа

Вы должны ввести

f.seek(0)

перед попыткой чтения файла (это отправит вас в начало файла) и

f.seek(0, 2)

, чтобы вернуться в конец, чтобы вы могли быть уверены, что не перезапишете его.

36
ответ дан 29 November 2019 в 20:28
поделиться

read () ничего не возвращает, потому что вы находитесь в конце файла. Вам нужно сначала вызвать seek () , прежде чем read () что-нибудь вернет. Например, поместите эту строку перед первым read () :

f.seek(-10, 1)

Конечно, прежде чем писать снова, не забудьте seek () до конца (если это куда вы хотите продолжить писать).

7
ответ дан 29 November 2019 в 20:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: