【解決方法】FileUpload コントロールでパスなしでファイル名のみを取得する方法


そのSPのパラメータとしてファイル名のみを指定する必要があります

connectionstring();
SqlConnection con = new SqlConnection(str);
con.Open();
SqlCommand cmd = new SqlCommand("Excel", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@ExcelName", SqlDbType.VarChar).Value = FileUpload1.ToString();
cmd.ExecuteNonQuery();
con.Close();

解決策 1

試す:

using System.IO;

FileInfo info = new FileInfo(myCompleteFilePath);
string fileNameWithoutPath = info.Name;

幸運を!

解決策 3

サラニャ、

これを試して

C#
if(FileUploader1.HasFile)
 {
    string filename = FileUploader1.PostedFile.FileName.ToString();
 }
   connectionstring();
   SqlConnection con = new SqlConnection(str);
   con.Open();
   SqlCommand cmd = new SqlCommand("Excel", con);
   cmd.CommandType = CommandType.StoredProcedure;
   cmd.Parameters.Add("@ExcelName", SqlDbType.VarChar).Value = filename;
   cmd.ExecuteNonQuery();
   con.Close();

ありがとう、
SP

解決策 2

やあ、

使用する FileName のプロパティ FileUpload コントロール。 以下のようにしてみてください。

C#
if (FileUpload1.HasFile)
{
    connectionstring();
    SqlConnection con = new SqlConnection(str);
    con.Open();
    SqlCommand cmd = new SqlCommand("Excel", con);
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.Add("@ExcelName", SqlDbType.VarChar).Value = FileUpload1.FileName;
    cmd.ExecuteNonQuery();
    con.Close();
}

参照 FileUpload クラス[^]
FileUpload.FileName プロパティ[^]

それが役に立てば幸い。

解決策 5

ここに行きます:

C#
string fileName = @"C:\mydir\myfile.ext";
string result = System.IO.Path.GetFileName(fileName);

乾杯、
または

解決策 6

これを使って

C#
connectionstring();
        SqlConnection con = new SqlConnection(str);
        con.Open();
        SqlCommand cmd = new SqlCommand("Excel", con);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.Add("@ExcelName", SqlDbType.VarChar).Value = FileUpload1.FileName;
        cmd.ExecuteNonQuery();
        con.Close();

コメント

タイトルとURLをコピーしました