[gcc]iconvで文字エンコードを変換するサンプルプログラム

単にテキストファイル等の文字エンコードを変換するのであれば、iconvコマンドを使用して変換すれば良いのですが、 ときにはプログラム内部で取得した文字列の文字エンコードを変換したい場合もあります。

以下のプログラムはLinuxやCygwinの環境でC言語のプログラムからiconvを呼び出して文字エンコードを変換する場合の手順を示したサンプルプログラムです。

--- tst_iconv.c ---

#include <stdio.h>
#include <iconv.h>

#define  BUFSIZE  1024

char outbuf[BUFSIZE];

int convert(char const *src,
            char const *dest,
            char const *text,
            char *buf,
            size_t bufsize);

main(void)
{
    int ret;

    ret = convert("SHIFT-JIS", "UTF-8",
                  "日本語テストメッセージおはよう",
                  outbuf, sizeof(outbuf));
    if (ret) {
        printf("%s\n", outbuf);
    }
    else {
        printf("Oops!\n");
    }
}

int convert(char const *src,
            char const *dest,
            char const *text,
            char *buf,
            size_t bufsize)
{
    iconv_t cd;
    size_t srclen, destlen;
    size_t ret;

    cd = iconv_open(dest, src);
    if (cd == (iconv_t)-1) {
        perror("iconv open");
        return 0;
    }

    srclen = strlen(text);
    destlen = bufsize - 1;
    memset(buf, '\0', bufsize);

    ret = iconv(cd, &text, &srclen, &buf, &destlen);
    if (ret == -1) {
        perror("iconv");
        return 0;
    }

    iconv_close(cd);
    return 1;
}

コンパイル方法
$ gcc -o tst_iconv tst_iconv.c -liconv

ICONV

ふつうのLinuxプログラミング Linuxの仕組みから学べるgccプログラミングの王道
ソフトバンククリエイティブ 著者:青木 峰郎 価格:2,940円 評価:★★★★★


  • 良書だと思います ★★★★★
  • Linuxを学ぶ為の読本、Cプログラムミングを学ぶなら別の本で ★★★★★
  • 基礎を学ぶには良い書籍だと思います ★★★★★
  • 入門書としては良い ★★★★
  • Linuxプログラミングを始めたい人にオススメ ★★★★★

powered by amalink
[2182] Posted by kagahiro at 2010/08/06 00:29:29
オープン | 0 point | Link (1) | Trackback (0) | Comment (0)

キーワード
gcc C言語 Linux Cygwin 文字エンコード 変換 サンプル プログラム

語句検索のホームページ


[gcc]iconvで文字エンコードを変換するサンプルプログラム 関連リンク

C言語
C言語は、AT&T社のベル研究所でデニス・リッチー氏とカーニハン氏の両氏によって開発されたプログラミング言語で、プログラムサイズが小さく高速のプログラムの作成が可能であるため、パソコンソフトや組み込み用のソ...

[gcc]iconvで文字エンコードを変換するサンプルプログラム トラックバック

トラックバックURL :


[gcc]iconvで文字エンコードを変換するサンプルプログラムへのコメント


詳細の入力フィールドを表示する

おすすめ  (チェックしてコメントすると最新情報に掲載)
コメント :

< 前のスレッド      次のスレッド >

アクセスランキング

今日のアクセスランキング(上位10件)

  1. プリンセスガーデンホテル女性社長の「片岡都美」氏はフジモリ元大統領夫人 (2 PV)
  2. 「暴力と麻薬に汚染された芸能界」を告発する梨元勝の「遺言状」 (2 PV)
  3. ログ速(ろぐそく、logsoku) - 過去ログ スレタイ検索 全文検索 (2 PV)
  4. YAKUZA Wiki (2 PV)
  5. find.2ch.netで2ちゃんねる掲示板の検索ができない (2 PV)
  6. PHP、MySQLで動くオープンソース掲示板ソフト (2 PV)
  7. 掲示板やチャットなどのフリーPHPスクリプトの配布サイト (1 PV)
  8. えっ、後藤組組長がFBIと取引していた? (1 PV)
  9. 5ちゃんねる(5ch.net、旧2ちゃんねる)掲示板 (1 PV)
  10. 2ちゃんねる全文検索 (1 PV)

今月のアクセスランキング(上位10件)

  1. ログ速(ろぐそく、logsoku) - 過去ログ スレタイ検索 全文検索 (104 PV)
  2. PHP、MySQLで動くオープンソース掲示板ソフト (68 PV)
  3. 5ちゃんねる(5ch.net、旧2ちゃんねる)掲示板 (41 PV)
  4. 2ちゃんねる(2ch)検索 掲示板 - スレタイ、過去ログ、全文検索 (32 PV)
  5. プリンセスガーデンホテル女性社長の「片岡都美」氏はフジモリ元大統領夫人 (29 PV)
  6. 「坑うつ剤」のヤバさは異常 (24 PV)
  7. find.2ch.netで2ちゃんねる掲示板の検索ができない (16 PV)
  8. YAKUZA Wiki (14 PV)
  9. 「暴力と麻薬に汚染された芸能界」を告発する梨元勝の「遺言状」 (14 PV)
  10. 2chまとめサイト(ブログ)検索 (11 PV)

アクセス統計

ディレクトリ

関連サイト