2

GTK を使用したファイル処理を知っている人はいますか。「w+」モードでファイルを開いて書き込む必要があります。GTK にファイル処理が存在するかどうかはわかりません。以下は、GTK 形式で必要な「C」プログラムのサンプルです。

#include <stdio.h>

int main(int argc, char *argv[]) {

 int a = 5;
 float b = 3.14;
 FILE *fp;

 fp = fopen( "test.txt", "w+" );
 fprintf( fp, "  %d   %f", a, b ); 
 fwrite(----);
 fclose( fp );
}
4

2 に答える 2

8

きっとGIOのことだよ

#include <gtk/gtk.h>

int main(int argc, char *argv[])
{
    gtk_init(&argc,&argv);

    GFile *file=g_file_new_for_path("test.txt");
    GFileOutputStream *output=g_file_replace(
                file,NULL,FALSE,
                G_FILE_CREATE_NONE,
                NULL,NULL);
    gint a=5;
    gfloat  b=3.14;
    gchar *buf=g_strdup_printf(" %d %f",a,b);
    g_output_stream_write(G_OUTPUT_STREAM(output),
                buf,strlen(buf),NULL,NULL);
    /* ----- */
    g_output_stream_close(G_OUTPUT_STREAM(output),NULL,NULL);
    g_free(buf);
    g_object_unref(output);
    g_object_unref(file);
    return 0;
}

詳細については、GIO リファレンス マニュアル (Devhelp を知っていますか?) を参照してください。

于 2013-10-11T11:01:35.203 に答える
0

上で述べたように、GTK はユーザー インターフェイス用であり、コード サンプルにはグラフィカル ユーザー インターフェイスはありません。ただし、GTK を強化する基礎となるライブラリである GLib に注目することもできます。システム間の移植性に優れたファイル ユーティリティ関数と、移植可能なI / O チャネルがあります。

于 2013-10-10T12:21:11.863 に答える