溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

C#怎么打開文件對話框OpenFileDialog類

發(fā)布時間:2022-02-28 09:24:45 來源:億速云 閱讀:566 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹了C#怎么打開文件對話框OpenFileDialog類的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇C#怎么打開文件對話框OpenFileDialog類文章都會有所收獲,下面我們一起來看看吧。

OpenFileDialog類提供了用戶打開文件的功能,它有如下屬性:

屬性

  • InitialDirectory:設(shè)置對話框的初始目錄。

  • Filter: 要在對話框中顯示的文件篩選器,例如,"文本文件(*.txt)|*.txt|所有文件(*.*)||*.*"。

  • FilterIndex: 在對話框中選擇的文件篩選器的索引,如果選第一項就設(shè)為1。

  • RestoreDirectory: 控制對話框在關(guān)閉之前是否恢復(fù)當前目錄。

  • FileName:第一個在對話框中顯示的文件或最后一個選取的文件。

  • Title:將顯示在對話框標題欄中的名稱。

  • Multiselect:設(shè)置打開對話框可以多選。

1、新建一個Winform窗體應(yīng)用程序,命名為:OpenFileDialogDemo

2、在界面上添加一個按鈕的控件(用于打開文件的窗口),添加日志輸出的文本控件(輸出最終用戶打開的文件的目錄、文件名稱和文件內(nèi)容)。

C#怎么打開文件對話框OpenFileDialog類

3、后臺代碼實現(xiàn):

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();
            //設(shè)置打開對話框的初始目錄,默認目錄為exe運行文件所在的路徑
            ofd.InitialDirectory = Application.StartupPath;
            //設(shè)置打開對話框的標題
            ofd.Title = "請選擇要打開的文件";
            //設(shè)置打開對話框可以多選
            ofd.Multiselect = true;
            //設(shè)置對話框打開的文件類型
            ofd.Filter = "文本文件|*.txt|音頻文件|*.wav|圖片文件|*.jpg|所有文件|*.*";
            //設(shè)置文件對話框當前選定的篩選器的索引
            ofd.FilterIndex = 2;
            //設(shè)置對話框是否記憶之前打開的目錄
            ofd.RestoreDirectory = true;
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                //獲取用戶選擇的文件完整路徑
                string filePath = ofd.FileName;
                //獲取對話框中所選文件的文件名和擴展名,文件名不包括路徑
                string fileName = ofd.SafeFileName;
                OutLog("用戶選擇的文件目錄為:" + filePath);

                OutLog("用戶選擇的文件名稱為:"+fileName);
                OutLog("**************選中文件的內(nèi)容**************");
                using (FileStream fsRead = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.Read))
                {
                  //定義二進制數(shù)組
                    byte[] buffer = new byte[1024 * 1024 * 5];
                    //從流中讀取字節(jié)
                    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文件測試

C#怎么打開文件對話框OpenFileDialog類

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

C#怎么打開文件對話框OpenFileDialog類

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

C#怎么打開文件對話框OpenFileDialog類

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

C#怎么打開文件對話框OpenFileDialog類

關(guān)于“C#怎么打開文件對話框OpenFileDialog類”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“C#怎么打開文件對話框OpenFileDialog類”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI