這篇文章主要介紹Winform如何使用OpenFileDialog彈出文件對話框,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
OpenFileDialog類提供了用戶打開文件的功能,它有如下屬性:
屬性
InitialDirectory:設置對話框的初始目錄。
Filter:要在對話框中顯示的文件篩選器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"。
FilterIndex:在對話框中選擇的文件篩選器的索引,如果選第一項就設為1。
RestoreDirectory:控制對話框在關閉之前是否恢復當前目錄。
FileName:第一個在對話框中顯示的文件或最后一個選取的文件。
Title:將顯示在對話框標題欄中的名稱。
Multiselect:設置打開對話框可以多選。
1、新建一個Winform窗體應用程序,命名為:OpenFileDialogDemo
2、在界面上添加一個按鈕的控件(用于打開文件的窗口),添加日志輸出的文本控件(輸出最終用戶打開的文件的目錄、文件名稱和文件內容)。

3、后臺代碼實現:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace OpenFileDialogDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/// <summary>
/// 打開文件按鈕單擊事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_OpenFile_Click(object sender, EventArgs e)
{
//定義一個文件打開控件
OpenFileDialog ofd = new OpenFileDialog();
//設置打開對話框的初始目錄,默認目錄為exe運行文件所在的路徑
ofd.InitialDirectory = Application.StartupPath;
//設置打開對話框的標題
ofd.Title = "請選擇要打開的文件";
//設置打開對話框可以多選
ofd.Multiselect = true;
//設置對話框打開的文件類型
ofd.Filter = "文本文件|*.txt|音頻文件|*.wav|圖片文件|*.jpg|所有文件|*.*";
//設置文件對話框當前選定的篩選器的索引
ofd.FilterIndex = 2;
//設置對話框是否記憶之前打開的目錄
ofd.RestoreDirectory = true;
if (ofd.ShowDialog() == DialogResult.OK)
{
//獲取用戶選擇的文件完整路徑
string filePath = ofd.FileName;
//獲取對話框中所選文件的文件名和擴展名,文件名不包括路徑
string fileName = ofd.SafeFileName;
OutLog("用戶選擇的文件目錄為:" + filePath);
OutLog("用戶選擇的文件名稱為:"+fileName);
OutLog("**************選中文件的內容**************");
using (FileStream fsRead = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Read))
{
//定義二進制數組
byte[] buffer = new byte[1024 * 1024 * 5];
//從流中讀取字節
int r= fsRead.Read(buffer, 0, buffer.Length);
OutLog(Encoding.Default.GetString(buffer,0,r));
}
}
}
/// <summary>
/// 輸出日志
/// </summary>
/// <param name="strLog"></param>
private void OutLog(string strLog)
{
//如果日志信息長度超過1000行,則自動清空
if (txt_FileInfo.GetLineFromCharIndex(txt_FileInfo.Text.Length) > 1000)
{
//清空文本
txt_FileInfo.Clear();
}
txt_FileInfo.AppendText(DateTime.Now.ToString("HH:mm:ss ")+strLog+"\r\n");
}
}
}4、生成exe文件測試

5、點擊打開文件按鈕,打開對話框。默認的目錄是exe文件所在的目錄:

6、在打開文件的類型中是我們設置的4和類型,默認選中的是第2個音頻文件類型:

7、選中要打開的文件后,程序運行效果:

以上是“Winform如何使用OpenFileDialog彈出文件對話框”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。