Что лучший способ состоит в том, чтобы записать в файл в Ruby? [закрытый]

Эта проблема может быть двоякой, если вы захотите сделать то, что @Tanjin предложил в комментариях, и это может сработать впоследствии (попробуйте добавить .config("spark.sql.catalogImplementation","hive") к вашему SparkSession.builder), но если вы действительно хотите использовать существующий улей экземпляр с собственными метаданными, которые вы сможете запрашивать за пределами вашей работы. Или вы уже можете использовать существующие таблицы, которые хотите добавить в конфигурацию hive-site.xml.

Этот файл конфигурации содержит некоторые свойства, которые вы, вероятно, захотите, например hive.metastore.uris, который позволит вашему контексту добавить новую таблицу, которая будет сохранена в хранилище. И он сможет читать из таблиц в вашем экземпляре улья благодаря metastore, который содержит таблицы и местоположения.

14
задан Sixty4Bit 29 September 2008 в 21:19
поделиться

5 ответов

File.open("a_file", "w") do |f|
    f.write "some data"
end

можно также использовать f << "some data" или f.puts "some data" согласно персональному вкусу/необходимости, чтобы иметь новые строки. Изменитесь "w" на "a", если Вы хотите добавить в файл вместо того, чтобы усечь с каждым, открываются.

31
ответ дан 1 December 2019 в 07:53
поделиться
require 'rio'
rio('foo.txt') < 'bar'

http://rio.rubyforge.org/

3
ответ дан 1 December 2019 в 07:53
поделиться

Вне File.new или File.open (и все другие забавные IO материал) можно пожелать, особенно если Вы сохраняете от и загружаетесь назад в Ruby, и Ваши данные находятся в объектах, для рассмотрения использования Маршал , чтобы сохранить и загрузить объекты непосредственно.

2
ответ дан 1 December 2019 в 07:53
поделиться

Используя File::open лучший способ пойти:

File.open("/path/to/file", "w") do |file|
  file.puts "Hello file!"
end

, Как ранее указано, можно использовать "a" вместо "w" для добавления в файл. Пусть другие режимы будут быть доступными, перечисляться под ri IO, или в Ruby Quickref .

0
ответ дан 1 December 2019 в 07:53
поделиться
filey = File.new("/path/to/the/file", APPEND)
filey.puts "stuff to write"
-2
ответ дан 1 December 2019 в 07:53
поделиться
Другие вопросы по тегам:

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