質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

POST

POSTはHTTPプロトコルのリクエストメソッドです。ファイルをアップロードしたときや入力フォームが送信されたときなど、クライアントがデータをサーバに送る際に利用されます。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

Q&A

解決済

1回答

1710閲覧

レスポンス結果がcsv(shift_JIS)で返って来る場合の変換方法[ruby]

saider_san

総合スコア14

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

POST

POSTはHTTPプロトコルのリクエストメソッドです。ファイルをアップロードしたときや入力フォームが送信されたときなど、クライアントがデータをサーバに送る際に利用されます。

UTF-8

UTF-8は8ビット符号単位の文字符号化形式及び文字符号化スキームです。データ交換方式、ファイル形式としては、一般的にUTF-8が使われる傾向があります。

0グッド

0クリップ

投稿2020/06/23 04:42

やりたいことについて

・現在以下のようにとあるAPIをPOSTで叩くと、
レスポンス結果が返ってくる簡単なコードを作成しました。

require 'net/http' require 'uri' postdata = { 'version' => '213', 'code' => '2001', 'name' => 'あいうえお' } url = 'hogehogeurl' uri = URI.parse(url) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = url.start_with?('https') ? true : false req = Net::HTTP::Post.new(uri.request_uri) req.set_form_data(postdata) res = http.request(req) puts '~~~~~~レスポンス結果~~~~' puts res.body

レスポンス結果はCSVで返って来るのですが、
文字コードがshift_JISです。(どうしてもshift_JISです。ここはこちらでは変更できません。)

レスポンス結果をUTF-8として文字コードを変換し、
puts res.bodyで取得結果をひとまず受け取りたいのですが
どのように書けば良いか詰まっており、質問した次第でございます。

何か書き方についてわかることなどありましたら
ご教示いただけますと幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決できました。

以下のようにすれば取得可能です。

require 'nkf'
でnkfをrequireして

puts NKF.nkf("-h1 -w", res.body)とすればOK

投稿2020/06/23 05:05

saider_san

総合スコア14

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問