背景:
隨機播放,所有的音樂播放器裏面現在幾乎都有這個功能吧。但是有沒有發現,自己的播放器在選擇隨機播放的時候,經常會聽到重複順序的歌曲呢?反正我是有這樣的感覺,無耐自己平時下的歌曲都是“歌手名—歌曲名”,所以在順序播放的時候,還是會一連串的聽到同一個人的歌曲。選擇隨機播放,又會遇到重複的順序(這主要是跟算法有關)。最後自己想到的辦法就是把自己硬盤上的所有音樂文件重命名成“歌曲名—歌手名”,但是打開查看自己硬盤上的音樂發現,竟然有六百首左右,自己手動改,豈不是要累死。
而且網上的一些批量該文件名的軟件完成不了自己的需求。誰叫咱是程序員呢,自己寫個程序完成不就行了。
這就是自己想寫這個程序的背景,最後想着自己註冊GitHub好長時間了你,也沒有怎麼用過,何不就用這次的代碼做一次嘗試呢?,接寫來我會先寫一下我的軟件完成過程,然後寫一下我初次在windows系統上搭建GitHub的過程。
------------------------------------------------分割線--------------------------------------------------
需求:
一,軟件特點:
開發語言:C#
項目類型:WinForm
.NET FramWork版本:2.0
二,軟件外觀:
主要使用ListBox來顯示自己的歌曲文件列表。
三,代碼
這個小工具的主要代碼有兩部分,就是添加歌曲目錄路徑和開始改名。
1)添加歌曲目錄並且把該目錄下的所有音樂文件讀取到ListBox中去的代碼如下:
private void btnAddFile_Click(object sender, EventArgs e) { //使用FolderBrowserDialog類,它提示用戶瀏覽、創建並最終選擇一個文件夾 FolderBrowserDialog fole = new FolderBrowserDialog(); //設置是否顯示“新建文件夾”按鈕 (false爲不顯示 true爲顯示) fole.ShowNewFolderButton = true; //設置顯示提示標題文字 fole.Description = "請選擇媒體文件夾"; //判斷是否點擊了確定按鈕 if (fole.ShowDialog() == DialogResult.OK) { //實例化目錄信息的類 (文件夾的全路徑) DirectoryInfo dir = new DirectoryInfo(fole.SelectedPath); txtBoxFile.Text = fole.SelectedPath.ToString(); //獲取總文件數目MP3和wma int nFileCount = 0; FileInfo[] file = dir.GetFiles(); for (int i = 0; i < file.Length ; i++) { if (file[i].Extension.ToLower().Equals(".mp3") || file[i].Extension.ToLower().Equals(".wma")) { nFileCount = nFileCount + 1; } } lblFileCount.Text = "總歌曲數是:" + nFileCount.ToString() + "首"; //遍歷文件夾中所有文件(除子文件夾) foreach (FileInfo info in dir.GetFiles()) { //判斷文件的後綴名 進行篩選 if (info.Extension.ToLower().Equals(".mp3") || info.Extension.ToLower().Equals(".wma")) { //把篩選後的文件添加到ListBox控件的集合中 listFileName.Items.Add(info.FullName); } } } }
2)開始轉換的代碼如下:
DateTime strStartTime = DateTime.Now; for (int i = 0; i < listFileName.Items.Count; i++) { string strOldName = listFileName.Items[i].ToString(); string strFileName = strOldName.Substring(strOldName.LastIndexOf('\\') + 1); //獲取歌手和歌曲名和文件格式 string strSinger = strFileName.Substring(0,strFileName.IndexOf('-')).Trim(); string strMusicName = strFileName.Substring(strFileName.IndexOf('-') + 1, (strFileName.LastIndexOf('.') - strFileName.IndexOf('-'))-1).Trim(); string strFormat = strFileName.Substring(strFileName.LastIndexOf('.')); string strNewName=strOldName.Substring(0,strOldName.LastIndexOf('\\')+1)+strMusicName+'-'+strSinger+strFormat; //更改歌曲名稱 File.Move(strOldName, strNewName); } DateTime strEndTime = DateTime.Now; TimeSpan span = strEndTime - strStartTime; this.labTime.Text = "花費時間爲:" + (span.TotalMilliseconds).ToString();
其實這段代碼主要就是拼接字符串來完成對文件名的修改,其實一點也不復雜。
由上面的代碼可以發現,其實這個小工具的代碼很簡單,但是卻解決了我的問題。而且很方便。如果手動修改的話,不僅無趣,而且也不會有什麼收穫。
下面就是自己的測試結果:
①開始轉換前:
②轉換過之後的文件名:
在轉換的過程中,自動過濾了除歌曲之外的所有文件。
到這裏文件名的修改就算是結束了。下面我們就開始在windows下面搭建GitHub,來Commit自己的源代碼。
----------------------------------------------搭建GitHub--------------------------------------------------------------------
一,首先看你自己時候有賬號,沒有賬號的話到https://github.com/註冊Git賬號。
二,如果已有Git賬號,則需要下載windows安裝文件包,地址:http://git-scm.com/download
三,有了安裝包文件後直接雙擊安裝即可(因爲下載的是在線安裝包,所以會花費一點時間)。
如下圖:
四,安裝完後,會在桌面出現 兩個快捷方式,如下圖:
第一個是Git的圖形操作界面的快捷方式;第二個是Git的命令行操作快捷方式;
點擊右上角創建自己的代碼文件庫:
如下圖:
點擊創建後就會出現下面的界面,我們根據說明填寫自己的代碼信息:
點擊下面的大綠色的按鈕“創建倉庫”後,進入下一步,
我們一定要把這個https://github.com/Chineseqiangzi/RenameMusic.git地址記好,後面會多次用到。
下一步是點擊Git Shell快捷方式,先把我們在Git上創建的倉庫clone到本地來。
①使用ssh -T [email protected]命令來檢查公約是否正確
說明成功連接了Git服務器。
②接下來就是對創建的庫進行clone,這時候我們找到github文件夾發現文件夾下面是空的,如下圖:
輸入如下代碼clone我們的github倉庫:git clone https://github.com/Chineseqiangzi/RenameMusic.git
結果如下:
這時候我們再在gitHub的默認文件夾下面呢會發現一個文件夾。如下:
這時候說明我們已經成功的把github上的倉庫clone了下來。
這時候的這個文件夾就相當於我們的工作臺了。我把我寫好的代碼文件都拷貝到這個文件夾下面去,如下圖:
③接下來我們要選擇上傳到github的倉庫中的文件,
我們需要執行以下語句
git add . (上傳該目錄下的所有文件,注意add和‘.’之間有空格)
如果我們需要單獨的上傳某一個文件,只需要以該文件的名稱替換‘.’
例如:git add program.cs (就是單獨的上傳program.cs文件)
④接下來提交代碼使用如下命令:
git commit -m 'first_commit'
使用過SVN或者TFS的時候,我們在提交代碼的時候是需要給版本控制工具一個說明,來說明我們對代碼做了哪些修改。
使用命令git commit -m 'first_commit' 添加說明
注意:使用的時候可能會報錯,如下圖,解決方法也在圖片中註釋
⑤這時我們就會看到我們本地的源代碼文件已經被創建到了github的倉庫中,如下圖:
⑥緊接着就是在我們的源代碼地址創建遠端倉庫,我們源代碼地址是:https://github.com/Chineseqiangzi/RenameMusic.git
命令如下:
git remote add origin https://github.com/Chineseqiangzi/RenameMusic.git (創建名字爲origin的遠端倉庫)
但是在我的本地電腦上卻報錯了,結果如下:
解決辦法如下:
找到如下地址的gitconfig文件
刪除該文件你的remote節點:
然後執行創建遠端倉庫命令,並且提交本地的origin分支到master。結果如下圖:
⑦這時我們就完成了整個的源代碼提交到github的工作,這時我們就可以在github看到我們自己貢獻的源代碼了。
-------------------------------------------------分割線-------------------------------------------------------------------
其實在安裝github 的時候,已經安裝了圖形的GUI界面,操作非常簡單,就不做介紹了,大家有興趣的可以自己探索。
在整個的使用gitHub 的過程中遇到了很多問題,自己主要是通過網絡搜索得到了有用的答案,如果大家有興趣,可以閱讀以下博主的文章。希望對大家有所幫助。