A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
No.2です。
下記のprintHTML関数の本体部分を先ほどの「c2html.c」へ
追加してください。
void printHTML(FILE *stream, const char *str)
{
int i;
for(i=0; *(str+i) != '\0'; i++){
switch(*(str + i)){
case '<':
fprintf(stream, "<");
break;
case '>':
fprintf(stream, ">");
break;
case '&':
fprintf(stream, "&");
break;
case '\t':
fprintf(stream, "");
break;
default:
fprintf(stream, "%c", *(str + i));
break;
}
}
}
色設定は適当ですので、お好みで変更していただければと思います。
No.2
- 回答日時:
単純なHTMLでよければこんなのでどうでしょう?
「c2html.c」というファイルを作成し、コピーしてみてください。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void printHTML(FILE *stream, const char *str);
#define BUF_SIZE 256
int main(int argc, char *argv[])
{
FILE *fpSource, *fpOut;
char buf[BUF_SIZE];
char *color[2] = {"lightgreen", "white"};
int idx = 0;
if(argc < 3){
printf("Usage:\n");
printf(">c2html <source.c> <out.html>\n");
exit(0);
}
printf("%s -> %s\n", argv[1], argv[2]);
fpSource = fopen(argv[1], "r");
fpOut = fopen(argv[2], "w");
if(fpSource == NULL || fpOut == NULL){
printf("File open error\n");
exit(1);
}
fprintf(fpOut, "<html>\n");
fprintf(fpOut, "\t<head>\n");
fprintf(fpOut, "\t\t<title>%s</title>\n", argv[1]);
fprintf(fpOut, "\t</head>\n");
fprintf(fpOut, "<body>\n");
fprintf(fpOut, "<h3>%s</h3>\n", argv[1]);
fprintf(fpOut, "\t\t<table border='0'>\n");
while(fgets(buf,BUF_SIZE,fpSource) != NULL){
buf[strlen(buf)-1] = '\0';
fprintf(fpOut, "\t\t\t<tr bgcolor='%s'><td align='right'>%d:</td><td>", color[idx % 2], idx+1);
if(strlen(buf) == 0){
fprintf(fpOut, "");
}else{
printHTML(fpOut, buf);
}
fprintf(fpOut, "</td></tr>\n");
idx++;
}
fprintf(fpOut, "\t\t</table>\n");
fprintf(fpOut, "\t</body>\n");
fprintf(fpOut, "</html>\n");
fclose(fpSource);
fclose(fpOut);
return 0;
}
printHTML関数が入りきらなかったので、申し訳ありませんが
連投させていただきます。
No.1
- 回答日時:
SourceConverterっていうソフトがありますが、どうでしょうか?
Cにも対応しているようです。
参考URL:http://www.forest.impress.co.jp/lib/stdy/program …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
- C言語・C++・C# C言語の質問です。バイナリ形式で保存されたWindows Bitmap形式の画像ファイルを読み込み、 3 2023/07/19 14:58
- C言語・C++・C# C言語の質問です HTMLでこのようなコードを書いたのですがそれをC言語で同じように書きたいです < 1 2022/08/11 23:38
- HTML・CSS ホームページにブログ記事をサムネイル付きで掲載する方法 2 2022/11/25 14:55
- インターネット広告・アフィリエイト アフェリエイトサイト 作成について 5 2022/05/13 21:31
- C言語・C++・C# 参考にいろいろとc言語、c++言語プログラミングでレジストリーを操作したいのですが、無料配布のc++ 3 2022/12/22 01:49
- C言語・C++・C# c言語の質問です。 ランダムに4桁の暗証番号を出力するプログラムを作ったのですが、4947→4973 3 2022/04/16 16:47
- 哲学 日本語は 言語類型として あたかも始原のごとくである 3 2022/05/29 04:41
- C言語・C++・C# C言語について。 3 2022/11/05 20:30
- HTML・CSS リンクバナーのHTMLタグ。画像を変えたり、設置位置を変えるとバナー貼付け側はどう見える? 2 2023/02/01 12:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語のfor文です。 繰り返しの...
-
strchr() の第2引数はなぜ int ...
-
CStringをwchar_tに変換したい
-
_TCHAR*での引数の読み込み
-
間接操作のレベルとは
-
fgetsなどのときのstdinのバッ...
-
c++ 文字列を入力して、一文字...
-
C言語の入力した文字を反転させ...
-
ftoa の作り方
-
標準ライブラリ関数の自作につ...
-
c言語です。
-
ネットワークにつながっている...
-
str系関数を使わずに二つの文字...
-
構造体のアライメント調整
-
間接参照のレベルが異なっています
-
文字列から空白を取り除きたい...
-
起動時の引数の取得方法が分か...
-
コマンドラインに入力されてい...
-
配列をnビットシフトする
-
RGB→YUV変換のプログラム
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
fgetsなどのときのstdinのバッ...
-
charでの計算?
-
C言語のfor文です。 繰り返しの...
-
charからLPTSTRへの変換方法
-
文字列から空白を取り除きたい...
-
C言語の入力した文字を反転させ...
-
'const char *' 型は 'char *' ...
-
配列をnビットシフトする
-
str系関数を使わずに二つの文字...
-
int main()の・・・
-
atoi( ) の反対をやりたい
-
CStringをwchar_tに変換したい
-
c++ 文字列を入力して、一文字...
-
switch文で文字を比較すること...
-
干支のプログラム
-
3桁区切(コンマ)記号をつけ...
-
絶対パスからのファイル名の切...
-
間接操作のレベルとは
-
間接参照のレベルが異なっています
-
型変換
おすすめ情報