2015-09-22 2 views
4

От ?truncate:предел размера файла для усечения в R

truncate обрезает файл открыт для записи в текущей позиции. Он работает только для соединений file и не реализован на всех платформах: на других (включая Windows) он не будет работать для больших (> 2 Гб) файлов.

В чем причина ограничения 2Gb для Windows? Имеет ли значение, если это 64-битная Windows или файловая система NTFS? Имеет ли значение версия Windows (XP, 7, 8, 10)?

Есть ли встроенная функция R или функция в некотором R-пакете, которая оказывает такое же влияние на Windows, как truncate на Unix-подобных системах?

ответ

2
  1. Согласно the source, отсутствующий 64-разрядной версии базового ftruncate системного вызова. Похоже, что эта проблема может/будет решена, когда обновляется MinGW, используемая для сборки R.
  2. No.
  3. No.
  4. Интерфейс Win32 API называется SetEndOfFile и a GitHub search for CRAN packages найдены восемь ударов. Удачи :-)
+0

Не могли бы вы взглянуть на обновленный вопрос? – qed

+0

@qed: Почему бы вам не задать следующий вопрос? – krlmlr

+0

Там вы идете: http://stackoverflow.com/questions/32736335/truncate-large-file-on-windows – qed

Смежные вопросы