No.1ベストアンサー
- 回答日時:
>C言語→C#に変換
の返信はないわけ?
お礼もまともにできないのにこの先やっていけるのかと。
面倒なので、
-ainput.txt -bkeyword
という引数から input.txt から keyword を検索するC言語のコード
#include <string.h>
#include <stdio.h>
int main(int argc, char* argv[])
{
FILE* fp;
FILE* fpp;
int i;
char KEYWORD[256];
char buf[256];
//(1)アウトプットファイルのオープン
fpp = fopen("output.txt", "w");
if (fpp == NULL)
{
printf("open error!\n");
return 1;
}
for (i = 1; i < argc; ++i)
{
//(2)入力ファイルのオープン
if (strncmp(argv[i], "-a", 2) == 0)
{
fp = fopen(argv[i] + 2, "r");
if (fp == NULL)
{
printf("open error!\n");
fclose(fpp);
return 1;
}
}
//(3)キーワードの代入
else if (strncmp(argv[i], "-b", 2) == 0) {
strcpy(KEYWORD, argv[i] + 2);
}
}
//(4)一行読み込む
while (fgets(buf, sizeof(buf), fp) != NULL)
{
//(5)キーワードの条件で文字列抽出
if (strstr(buf, KEYWORD) != NULL)
{
//(6)アウトプットファイルに出力
fprintf(fpp, "%s", buf);
}
}
//ファイルクローズ
fclose(fp);
fclose(fpp);
return 0;
}
そのC#版
using System;
using System.IO;
using System.Text;
public class Program1
{
static int Main(string[] args)
{
string inpath = null;
string keyword = null;
string outpath = "output.txt";
foreach (string cmd in args) {
if (cmd.IndexOf("-a") == 0) {
inpath = cmd.Substring(2);
}
else if (cmd.IndexOf("-b") == 0) {
keyword = cmd.Substring(2);
}
}
if (inpath == null || keyword == null) {
return 1;
}
StreamReader sr = null;
StreamWriter sw = null;
try {
sr = new StreamReader(inpath, Encoding.GetEncoding(932));
sw = new StreamWriter(outpath, false, Encoding.GetEncoding(932));
string line;
while ((line = sr.ReadLine()) != null) {
if (line.IndexOf(keyword) != -1) {
sw.WriteLine(line);
}
}
}
catch (Exception ex) {
Console.WriteLine(ex.Message);
}
finally {
if (sr != null) {
sr.Close();
}
if (sw != null) {
sw.Close();
}
}
return 0;
}
}
あとは自分で考えて。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- その他(プログラミング・Web制作) Pythonで、データファイルと列名ファイルを1つのファイルにしたいです。 1 2023/07/27 20:29
- Visual Basic(VBA) ユーザーフォームで銀行に対応した支店コードの入力ができません Sheet1のA列に銀行名、B列に銀行 5 2022/07/28 17:50
- Excel(エクセル) セルを参照して条件で値をコピーする 3 2023/02/08 17:45
- Visual Basic(VBA) Excel VBA でデータ転記について 1 2023/03/07 19:11
- C言語・C++・C# 至急お願いします。C言語で.imgのファイルを読み込んで1バイトづつ出力するプログラムを作りたいので 3 2023/01/16 22:49
- C言語・C++・C# C言語で 英文字のみからなる文字列、”Radar”、”WasItACatISaw”、”a”、””(空 5 2022/12/20 15:17
- Visual Basic(VBA) テキストボックスの値を該当セルに登録する方法 2 2022/11/23 18:47
- その他(プログラミング・Web制作) エクセルVBA 3 2022/06/11 16:01
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エラーがわかりません、、
-
ファイルへの書込み処理が異常...
-
c言語 ファイルから数字を読み...
-
ファイルに行番号を追加
-
c言語でのfscanfについて
-
ガンマ変換 C言語でプログラ...
-
ファイルの特定行の抽出
-
ファイル読み込み EOF 判定
-
Cで文字列の分割
-
2÷3などの余りについて
-
C言語で%を使わない余りの出し方
-
比較回数と交換回数表示について
-
信頼区間の1.96や1.65ってどこ...
-
nCmの関数
-
複数桁10進数の*桁目だけを抽出...
-
Notepad++の関数リスト表示の変...
-
C言語のfor文です。 繰り返しの...
-
break文でループを一気に抜ける...
-
正負を反転させて出力するプロ...
-
#define _CRT_SECURE_NO_WARNIN...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
c言語でのfscanfについて
-
C言語でファイル読み書きを早く...
-
fopenでファイル名に、変数を使...
-
複数ファイルの同時読み込みの...
-
fgets( ) の返り値は何?
-
テキストファイル内に対して, ...
-
ファイルへの書込み処理が異常...
-
C言語にてXMLファイルから任意...
-
ファイル出力で改行を入れたい!
-
C言語でセグメンテーションエ...
-
エラーがわかりません、、
-
ガンマ変換 C言語でプログラ...
-
自己相関関数を求めるプログラ...
-
VisualStudioでのファイルの入...
-
同時にファイル読み込み 書き込み
-
c言語 ファイルから数字を読み...
-
大量の入力ファイルを扱うとき...
-
ファイルが読み込めない・・・
-
【C言語】ファイルを読み込んで...
-
a*(1-exp(-bx))+cの近似の方法
おすすめ情報