最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# WinForm制作一個批量轉(zhuǎn)化文件格式的小工具

 更新時間:2023年11月16日 11:27:35   作者:Dm_dotnet  
在生活中有時候會遇到批量轉(zhuǎn)換格式的需求,一個個點太麻煩了,一個能夠?qū)崿F(xiàn)批量文件格式轉(zhuǎn)換的工具非常有用,所以本文小編使用C# WinForm制作一個批量轉(zhuǎn)化文件格式的小工具,文中有具體實現(xiàn)代碼,需要的朋友可以參考下

前言

在生活中有時候會遇到批量轉(zhuǎn)換格式的需求,一個個點太麻煩了,一個能夠?qū)崿F(xiàn)批量文件格式轉(zhuǎn)換的工具非常有用。我這次就遇到了需要批量轉(zhuǎn)換文件格式的需求,比如需要將doc文件轉(zhuǎn)換為docx文件。

為這個小工具設(shè)定了兩個基本功能,一個是選定一個文件夾后,將文件夾下的所有文件都轉(zhuǎn)換為指定文件,另一個是批量選擇文件將選中的文件轉(zhuǎn)換為指定格式。

全部轉(zhuǎn)換為指定格式的效果如下所示:

批量轉(zhuǎn)換為指定格式的效果如下所示:

具體實現(xiàn)

界面的設(shè)計如下所示:

為了方便演示,使用的是原生控件,就是1個label、1個textbox、3個button。

確定按鈕的代碼如下:

  if(textBox1.Text != " " && textBox1.Text.StartsWith(".")) 
  {
      requiredExtension = textBox1.Text;
      MessageBox.Show($"已將需要的后綴名設(shè)定為:{requiredExtension}");
  }
  else
  {
      MessageBox.Show($"請設(shè)置正常的后綴名,以.開頭");
  }
          

全部轉(zhuǎn)換按鈕的代碼如下:

   if (requiredExtension != null)
   {
       // 創(chuàng)建一個FolderBrowserDialog對象
       FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog();
?
       // 設(shè)置對話框的標(biāo)題
       folderBrowserDialog.Description = "選擇需要轉(zhuǎn)換格式的文件夾";
?
       // 設(shè)置默認(rèn)的根文件夾,如果需要的話
       // folderBrowserDialog.RootFolder = Environment.SpecialFolder.MyComputer;
?
       // 顯示文件夾選擇對話框
       DialogResult result = folderBrowserDialog.ShowDialog();
?
       if (result == DialogResult.OK)
       {
           selectedFolderPath = folderBrowserDialog.SelectedPath;
           MessageBox.Show($"您選中的文件夾路徑為:{selectedFolderPath}");
           // 調(diào)用 GetFiles 方法獲取文件夾下的所有文件路徑
           string[] files = Directory.GetFiles(selectedFolderPath);
           foreach (var file in files)
           {
               string fileExtension = Path.GetExtension(file);
               if (fileExtension != requiredExtension)
               {
                   // 構(gòu)造新的文件路徑,替換原來的后綴名
                   string newFilePath = Path.ChangeExtension(file, requiredExtension);
?
                   // 使用 File.Move 重命名文件
                   File.Move(file, newFilePath);
?
               }
           }
           MessageBox.Show($"轉(zhuǎn)換文件格式成功,本次轉(zhuǎn)化文件數(shù)為:{files.Length}");
       }
       else
       {
           MessageBox.Show("您本次沒有選中文件夾!?。?);
       }
   }
   else
   {
       MessageBox.Show("請先設(shè)定需要的后綴名?。?!");
   }

批量轉(zhuǎn)換的代碼如下:

  if (requiredExtension != null)
  {
      OpenFileDialog openFileDialog = new OpenFileDialog();
      openFileDialog.Filter = "All Files (*.*)|*.*";
      openFileDialog.Multiselect = true;
      if (openFileDialog.ShowDialog() == DialogResult.OK)
      {
          // 獲取選中的文件路徑數(shù)組
          string[] selectedFiles = openFileDialog.FileNames;
          foreach (var file in selectedFiles)
          {
              string fileExtension = Path.GetExtension(file);
              if (fileExtension != requiredExtension)
              {
                  // 構(gòu)造新的文件路徑,替換原來的后綴名
                  string newFilePath = Path.ChangeExtension(file, requiredExtension);
?
                  // 使用 File.Move 重命名文件
                  File.Move(file, newFilePath);
?
              }
          }
          MessageBox.Show($"轉(zhuǎn)換文件格式成功,本次轉(zhuǎn)化文件數(shù)為:{selectedFiles.Length}");
      }
      else
      {
          MessageBox.Show("您本次沒有選中任何文件?。?!");
      }
?
  }
  else
  {
      MessageBox.Show("請先設(shè)定需要的后綴名?。?!");
  }

最大的區(qū)別就是選中的是一個文件夾還是多個文件。

本示例全部源代碼如下:

    public partial class Form1 : Form
    {
        string requiredExtension;
        string selectedFolderPath;
        public Form1()
        {
            InitializeComponent();
        }
?
        private void label1_Click(object sender, EventArgs e)
        {
?
        }
?
        private void button3_Click(object sender, EventArgs e)
        {
            if(textBox1.Text != " " && textBox1.Text.StartsWith(".")) 
            {
                requiredExtension = textBox1.Text;
                MessageBox.Show($"已將需要的后綴名設(shè)定為:{requiredExtension}");
            }
            else
            {
                MessageBox.Show($"請設(shè)置正常的后綴名,以.開頭");
            }
          
                       
            
        }
?
        private void button1_Click(object sender, EventArgs e)
        {
            if (requiredExtension != null)
            {
                // 創(chuàng)建一個FolderBrowserDialog對象
                FolderBrowserDialog folderBrowserDialog = new FolderBrowserDialog();
?
                // 設(shè)置對話框的標(biāo)題
                folderBrowserDialog.Description = "選擇需要轉(zhuǎn)換格式的文件夾";
?
                // 設(shè)置默認(rèn)的根文件夾,如果需要的話
                // folderBrowserDialog.RootFolder = Environment.SpecialFolder.MyComputer;
?
                // 顯示文件夾選擇對話框
                DialogResult result = folderBrowserDialog.ShowDialog();
?
                if (result == DialogResult.OK)
                {
                    selectedFolderPath = folderBrowserDialog.SelectedPath;
                    MessageBox.Show($"您選中的文件夾路徑為:{selectedFolderPath}");
                    // 調(diào)用 GetFiles 方法獲取文件夾下的所有文件路徑
                    string[] files = Directory.GetFiles(selectedFolderPath);
                    foreach (var file in files)
                    {
                        string fileExtension = Path.GetExtension(file);
                        if (fileExtension != requiredExtension)
                        {
                            // 構(gòu)造新的文件路徑,替換原來的后綴名
                            string newFilePath = Path.ChangeExtension(file, requiredExtension);
?
                            // 使用 File.Move 重命名文件
                            File.Move(file, newFilePath);
?
                        }
                    }
                    MessageBox.Show($"轉(zhuǎn)換文件格式成功,本次轉(zhuǎn)化文件數(shù)為:{files.Length}");
                }
                else
                {
                    MessageBox.Show("您本次沒有選中文件夾?。?!");
                }
            }
            else
            {
                MessageBox.Show("請先設(shè)定需要的后綴名?。?!");
            }
        }
?
        private void button2_Click(object sender, EventArgs e)
        {
            if (requiredExtension != null)
            {
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.Filter = "All Files (*.*)|*.*";
                openFileDialog.Multiselect = true;
                if (openFileDialog.ShowDialog() == DialogResult.OK)
                {
                    // 獲取選中的文件路徑數(shù)組
                    string[] selectedFiles = openFileDialog.FileNames;
                    foreach (var file in selectedFiles)
                    {
                        string fileExtension = Path.GetExtension(file);
                        if (fileExtension != requiredExtension)
                        {
                            // 構(gòu)造新的文件路徑,替換原來的后綴名
                            string newFilePath = Path.ChangeExtension(file, requiredExtension);
?
                            // 使用 File.Move 重命名文件
                            File.Move(file, newFilePath);
?
                        }
                    }
                    MessageBox.Show($"轉(zhuǎn)換文件格式成功,本次轉(zhuǎn)化文件數(shù)為:{selectedFiles.Length}");
                }
                else
                {
                    MessageBox.Show("您本次沒有選中任何文件!?。?);
                }
?
            }
            else
            {
                MessageBox.Show("請先設(shè)定需要的后綴名?。?!");
            }
        }
    }
}

以上就是C# WinForm制作一個批量轉(zhuǎn)化文件格式的小工具的詳細(xì)內(nèi)容,更多關(guān)于C# WinForm文件格式工具的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C#中方法的直接調(diào)用、反射調(diào)用與Lambda表達(dá)式調(diào)用對比

    C#中方法的直接調(diào)用、反射調(diào)用與Lambda表達(dá)式調(diào)用對比

    這篇文章主要介紹了C#中方法的直接調(diào)用、反射調(diào)用與Lambda表達(dá)式調(diào)用對比,本文著重講解了方法的三種調(diào)用方法以及它們的性能對比,需要的朋友可以參考下
    2015-06-06
  • C#的TimeSpan案例詳解

    C#的TimeSpan案例詳解

    這篇文章主要介紹了C#的TimeSpan案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C# 文件安全管理需要注意的

    C# 文件安全管理需要注意的

    這篇文章主要介紹了C# 文件安全管理需要注意的,幫助大家更好的理解和學(xué)習(xí)使用c#,感興趣的朋友可以了解下
    2021-03-03
  • Unity3D實現(xiàn)批量下載圖片功能

    Unity3D實現(xiàn)批量下載圖片功能

    這篇文章主要為大家詳細(xì)介紹了Unity3D實現(xiàn)批量下載圖片功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • 深入理解StringBuilder的使用方法

    深入理解StringBuilder的使用方法

    下面小編就為大家?guī)硪黄钊肜斫釹tringBuilder的使用方法。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • 詳解C#用new和override來實現(xiàn)抽象類的重寫區(qū)別

    詳解C#用new和override來實現(xiàn)抽象類的重寫區(qū)別

    本篇文章主要介紹了詳解C#用new和override來實現(xiàn)抽象類的重寫區(qū)別,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧。
    2017-02-02
  • C#實現(xiàn)圖片切割的方法

    C#實現(xiàn)圖片切割的方法

    這篇文章主要介紹了C#實現(xiàn)圖片切割的方法,涉及C#使用Graphics實現(xiàn)圖片屬性的相關(guān)設(shè)置、保存等操作技巧,需要的朋友可以參考下
    2017-06-06
  • c#如何實現(xiàn)接口事件

    c#如何實現(xiàn)接口事件

    這篇文章主要介紹了c#如何實現(xiàn)接口事件,幫助大家更好的理解和學(xué)習(xí)c#,感興趣的朋友可以了解下
    2020-10-10
  • 如何用C#實現(xiàn)壓縮文件

    如何用C#實現(xiàn)壓縮文件

    話說當(dāng)今壓縮市場三足鼎立,能叫上名號的有zip、rar、7z。其中zip是壓縮界的鼻祖,在各大平臺上的流行度最廣,rar是商業(yè)軟件,壓縮率和效率都是很高的。7z是開源的,屬于后起之秀。這篇文章介紹了如何使用ICSharpCode組件,在windows平臺下zip的壓縮與解壓的方法
    2021-06-06
  • C# 數(shù)組實例介紹(圖文)

    C# 數(shù)組實例介紹(圖文)

    數(shù)組即是一組相同類型組合在一起,使用一個通用的名稱,通過分配的下標(biāo)訪問的數(shù)據(jù)集合中的元素。
    2014-08-08

最新評論

绵竹市| 报价| 芮城县| 大理市| 正宁县| 泰安市| 恩施市| 涟源市| 灌阳县| 东兴市| 驻马店市| 邵东县| 建始县| 德州市| 黑山县| 平遥县| 和田市| 甘孜县| 东阿县| 舒兰市| 南木林县| 长阳| 弥勒县| 叙永县| 林甸县| 盈江县| 枣庄市| 固安县| 花莲市| 南溪县| 锦州市| 阳东县| 文水县| 新丰县| 包头市| 桓台县| 永德县| 双鸭山市| 乌拉特中旗| 灯塔市| 新兴县|