Я делаю http-запросы, используя Go.Кодирование Go и UTF-8 - Автоматическое преобразование?
request, err := http.NewRequest("GET", url, nil)
Этот запрос, в случае успеха, возвращает ответ.
response, err := client.Do(request)
После получения ответа я хочу сохранить содержимое.
content, err := ioutil.ReadAll(response.Body)
ioutil.WriteFile(destination, content, 0644)
Я просмотрел заголовки ответов.
response.Header.Get("Content-Type")
Я видел, что большинство уже закодировано в кодировке UTF-8, что хорошо. Но есть некоторые, которые имеют разные кодировки. Я знаю, что Go имеет встроенную поддержку Unicode. Означает ли это, что если я напишу, например, содержимое страницы с большим размером 5, она будет автоматически преобразована в utf-8? Или мне нужно вручную декодировать, используя кодировку большого размера и перекодировать с помощью utf-8?
В принципе, я хочу, чтобы все, что написано, было закодировано в utf-8. Каков наилучший способ достичь этого?
Спасибо!
Связанный/возможный дубликат [Перейти к вопросу о преобразовании кодирования] (http://stackoverflow.com/questions/31651410/go-encoding-transform-issue) – icza