Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Golang сохранение слайса в файл 
V
    Опции темы
CynicRus
Дата 23.3.2018, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 31.5.2012

Репутация: нет
Всего: 5



Добрый день уважаемым форумчанам. Изучаю потихоньку Golang, и столкнулся со следующей проблемой.
Если слайс наполняемый строками. Пытаюсь его сохранить в файл следующим образом:
Код

func buildData(filename string, data []string) {
    buf := &bytes.Buffer{}
    gob.NewEncoder(buf).Encode(data)
    bs := buf.Bytes()
    err := ioutil.WriteFile(filename, bs, 0644)
    if err != nil {
        panic(err.Error())
    }
}


Работает быстро, 300 000 строк сохраняет в секунду, но...добавляет в начало строк всякий мусор типа ! и ", которых в строках нет. Причём сохраняет не в каждую строку а абсолютно рандомную. Что я делаю не так?
PM MAIL   Вверх
CynicRus
Дата 23.3.2018, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 248
Регистрация: 31.5.2012

Репутация: нет
Всего: 5



В результате сделал так:
Код

func buildData(filename string, data []string) {
    s := strings.Join(data[0:], "")
    err := ioutil.WriteFile(filename, []byte(s), 0644)
    if err != nil {
        panic(err.Error())
    }
}

и всё взлетело.
PM MAIL   Вверх
Google
  Дата 15.8.2018, 06:22 (ссылка)  





  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Добро пожаловать в раздел "Другие языки" форума Vingrad!

Void
Void

Раздел посвящён различным языкам программирования, для которых (в силу невысокой популярности) нет отдельного раздела (GPSS, Lua, MATLAB, Ada, Forth, Smalltalk, Tcl, REXX, AWK и др.)

  • Обязательно следуйте правилам Форума.
  • Пожалуйста, прочитайте и следуйте рекомендациям по работе в разделе и навигации по Форуму.
  • Для вставки текстов исходных кодов используйте подсветку синтаксиса из выплывающего списка Код в форме ответа. Если Ваш язык в списке не представлен, то используйте тег: [code=ваш_язык]код[/code], например, [code=ada]код[/code]. Если в будущем подсветка синтаксиса для указанного языка будет реализована, исходный код преобразится.
  • Помните, один вопрос - одна тема.

Приятного времяпрепровождения! С уважением, Void, kemiisto .

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Другие языки | Следующая тема »


 




[ Время генерации скрипта: 0.0626 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.