

[C#] OpenFileDialogによって得られた'Filename'を、Sting型にするには?
OpenFileDialogの処理をクラスにまとめて、そこから得られた文字列を返したいと思います。
---------------------------------------------------
class GetFileName
{
public void OpenFileDialog(StringBuilder name)
{
//OpenFileDialogクラスのインスタンスを作成
OpenFileDialog ofd = new OpenFileDialog();
ofd.FileName = "sd.zip";
ofd.InitialDirectory = @"C:\";
ofd.Filter =
"ZIP Failes(*.zip;*.zi_)|*.zip;*.zi_|All Files(*.*)|*.*";
ofd.FilterIndex = 1;
//タイトルを設定する
ofd.Title = "Please select the opening file.";
ofd.RestoreDirectory = true;
ofd.CheckFileExists = true;
ofd.CheckPathExists = true;
//ダイアログを表示する
if (ofd.ShowDialog() == DialogResult.OK)
{
//OKボタンがクリックされたとき
//選択されたファイル名を表示する
Console.WriteLine(ofd.FileName);
name = ofd.FileName; <<<--- ここでエラーになる
}
}
}
//呼び出し元
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//
// ボタン
//
private void buttonDec_Click(object sender, EventArgs e)
{
StringBuilder fname = new StringBuilder(256);
GetFileName gf;
gf = new GetFileName(); //インスタンス化
gf.OpenFileDialog(fname);
Console.WriteLine(fname); //
}
}
どのようにすれば、得られた文字列を戻すことが出来ますか。
以上、よろしくお願いします。
No.2ベストアンサー
- 回答日時:
StringBuilderはStringの入れ物みたいな役割なので、
「中身」を入れ替えるような処置にします。
//現在の文字列を除去する
name.Remove(0, name.ToString().Length);
//ファイルのパス名を追加する
name.Append(ofd.FileName);
No.1
- 回答日時:
そりゃそうでしょう。
StringBuilder型の変数にstring型のデータを代入しているんだから。http://msdn.microsoft.com/en-us/library/system.w …
#個人的にはオブジェクトを渡すよりもreturnで戻り値を受け取る方が好き。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
関数内の変数に<summary>コメン...
-
リフレクション
-
Java リフレクションについて
-
内部クラスのインスタンスを外...
-
a href="..." とServlet
-
C#のクラスライブラリでメッセ...
-
構造 他のクラスの構造体を別...
-
ネストしたenumへのリフレクシ...
-
C# インターフェイスの実装
-
visual studioのデザイナ画面で...
-
「タイプ初期化子が例外をスロ...
-
eclipse-Tomcatでのデバッグに...
-
エクセルVBAで、条件に一致する...
-
中学のクラス数
-
javascriptからjavaを呼び出したい
-
【sendkeysメソッドが動かずに...
-
Excelで =EMBED("Acrobat Docu...
-
引数で日付を2つ与え、その間の...
-
JavaScriptからJAVAクラスを呼...
-
サーブレットコンテキストの意...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数内の変数に<summary>コメン...
-
C#にて別クラスの関数を使いたい
-
クラス間でのデータ参照
-
c++,ある関数のクラスから別の...
-
Java リフレクションについて
-
import と extends について
-
C# インターフェイスの実装
-
構造 他のクラスの構造体を別...
-
範囲外の数値を代入したらエラ...
-
C#でほかのファイルにある自作...
-
C#のクラスライブラリでメッセ...
-
親クラスから子クラスへアクセス。
-
Tomcatのpropertiesファイルの...
-
java-別クラスの変数の使い方を...
-
C++でfriendクラスにしているの...
-
継承したクラス側のクラス名の取得
-
dynamic_castの必要性
-
ネストしたenumへのリフレクシ...
-
Java
-
ASP Pageの孫継承のPage_Load
おすすめ情報