網站首頁 編程語言 正文
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(); } ////// 打開文件按鈕單擊事件 /// /// /// 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)); } } } ////// 輸出日志 /// /// 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、選中要打開的文件后,程序運行效果:
原文鏈接:https://www.cnblogs.com/dotnet261010/p/6372950.html
相關推薦
- 2022-04-22 qiankun框架下使用el-select或者分頁報錯Failed to execute ‘getC
- 2023-01-12 python如何批量讀取.mat文件并保存成.npy_python
- 2023-02-10 C/C++中智能指針的用法詳解_C 語言
- 2022-06-11 C#實現文件Move和Copy操作_C#教程
- 2022-06-29 Tomcat配置訪問日志和線程數的實現步驟_Tomcat
- 2022-12-26 matplotlib畫圖之修改坐標軸刻度問題_python
- 2022-03-20 如何在Go中將[]byte轉換為io.Reader_Golang
- 2022-03-27 Linux上搭載Nginx負載均衡配置使用案例詳解_nginx
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支