3

重複の可能性:
ファイル拡張子c#を変更します

次のコードはC++ですが、これをC#でどのように表現しますか?

FILE fp = fopen(ChangeFileExt(Application.ExeName, ".DAT").c_str(), "w");

このトピックに関連する別の質問は次のとおりです。

次のc#に相当します。

fputs((thisstring.CommaText + "\n").c_str(), fp); 
4

3 に答える 3

9

どうですか:

FileStream fs = File.OpenWrite(Path.ChangeExtension(Application.ExeName, "DAT"));
于 2012-09-19T09:18:27.300 に答える
4

EXE 名に基づいて FileStream を開く (作成する) ことができます。

FileStream fs = File.Create(
        Path.ChangeExtension(Application.ExeName, "dat"));

または多分 TextWriter は C/C++ に近いですFILE:

StreamWriter writer = File.CreateText(
        Path.ChangeExtension(Application.ExeName, "dat"));

ただし、ProgramFiles フォルダへの書き込みは一般ユーザーには禁止されているので注意してください。

于 2012-09-19T09:19:31.813 に答える
1

コンパイルしていませんが、これでアイデアが得られるかもしれません。

string appName = Assembly.GetExecutingAssembly().Location;
FileStream s = File.Open(Path.ChangeExtension(appName , ".DAT"), FileMode.OpenOrCreate);
于 2012-09-19T09:19:59.663 に答える