




已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
C#文件操作和FTP操作FileInfo類FileInfo實例封裝了計算機文件系統(tǒng)中某個目錄中的一個文件,它包含操作文件及獲取該文件詳細信息的無數(shù)方法。當(dāng)創(chuàng)建一個新的FileInfo對象時,必須給FileInfo構(gòu)造函數(shù)傳遞一個表示文件名的字符串來關(guān)聯(lián)此對象與文件名對應(yīng)的文件。此文件名既可以是一個已有的文件,也可以使一個將要創(chuàng)建的不存在文件。File類File類支持對文件的基本操作,包括提供用于創(chuàng)建,復(fù)制,刪除,移動和打開文件的靜態(tài)方法,并協(xié)助創(chuàng)建FileStream對象。FileInfo類和File類之間去多方法調(diào)用都是相同的,但是FileInfo類沒有靜態(tài)方法,僅可以用于實例化的對象。FileStream類FileStream用于讀寫二進制的文件。它是一個常用且功能強大的二進制流類,可用于讀寫單個字節(jié)和塊字節(jié)。因為字符只是編碼的字節(jié),所以FileStream也能用于流字符。我們可以使用FileStream自身的構(gòu)造函數(shù)來創(chuàng)建一個新的FileStream對象,或者使用FileInfo的某個方法來完成。Directory類Directory類用于復(fù)制,移動,重命名,創(chuàng)建,刪除目錄等典型操作。DirectoryInfo類DirectoryInfo類和Directory類之間的關(guān)系與FileInfo類和File類之間關(guān)系十分類似。上傳文件源代碼public static void onload(string file) FtpWebRequest ftp; FileInfo f = new FileInfo(file); ftp = (FtpWebRequest)FtpWebRequest.Create(new Uri(20/ + f.Name);ftp.Credentials = new NetworkCredential(yts, yts);ftp.KeepAlive = false;ftp.Method = WebRequestMethods.Ftp.UploadFile; ftp.UseBinary = true;ftp.ContentLength = f.Length; int buffLength = 20480; / byte buff = new bytebuffLength; int contentLen; try FileStream fs = f.OpenRead();Stream sw = ftp.GetRequestStream();contentLen = fs.Read(buff, 0, buffLength); while (contentLen != 0) sw.Write(buff, 0, contentLen); contentLen = fs.Read(buff, 0, buffLength); sw.Close(); fs.Close(); MessageBox.Show(上傳成功); catch (Exception e) MessageBox.Show(e.Message.ToString(); 下載文件代碼public void Download(string ftpServerIP, string ftpUserID, string ftpPassword, string fileName, string Destination) FtpWebRequest reqFTP; try FileStream outputStream = new FileStream(Destination + + fileName, FileMode.Create); reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftp:/ + ftpServerIP + / + fileName); reqFTP.Method = WebRequestMethods.Ftp.DownloadFile; reqFTP.UseBinary = true; reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword FtpWebResponse ftpresponse = (FtpWebResponse)reqFTP.GetResponse(); Stream ftpStream = ftpresponse.GetResponseStream(); long cl = ftpresponse.ContentLength; int bufferSize = 2048; int readCount; byte buffer = new bytebufferSize; readCount = ftpStream.Read(buffer, 0, bufferSize); while (readCount 0) outputStream.Write(buffer, 0, readCount); readCount = ftpStream.Read(buffer, 0, bufferSize); ftpStream.Close(); outputStream.Close(); ftpresponse.Close(); MessageBox.Show(下載成功); catch (Exception ex) MessageBox.Show(ex.ToString(); 遍歷文件夾中的文件private void button3_Click(object sender, EventArgs e) DirectoryInfo dir = new DirectoryInfo(textBox1.Text.ToString(); j = 0; label1.Text = GetAllFiles(dir).ToString(); private int GetAllFiles(DirectoryInfo dir) /為 FileInfo 和 DirectoryInfo 對象提供基類,因此它可以強制轉(zhuǎn)換為FileInfo對象和DirectoryInfo對象 /GetFileSystemInfos()檢索表示當(dāng)前目錄的文件和子目錄的強類型 FileSystemInfo 對象的數(shù)組 FileSystemInfo fileinfo = dir.GetFileSystemInfos(); foreach (FileSystemInfo i in fileinfo) if (i is DirectoryInfo) /判斷如果檢索到的是子目錄,則繼續(xù)向下檢索,否則文件數(shù)加一。 GetAllFiles(DirectoryInfo)i); else j+; return j; 通過對話框選擇文件或是文件夾/ / 通過對話框來選擇一個或是多個文件 / / / private void BtnSelectFile_Click(object sender, EventArgs e) /通過此類來選擇一個文件, 并獲得文件的信息 OpenFileDialog fileDialog = new OpenFileDialog(); /設(shè)置是否能選項多個文件夾 fileDialog.Multiselect = true; /設(shè)置選擇文件對話框的標(biāo)題 fileDialog.Title = 請選擇文件; /設(shè)置選擇文件的類型 /fileDialog.Filter = Text files (*.txt)|*.txt|All files (*.*)|*.*; fileDialog.Filter = 文本文件 |*.txt;*.docx;*.pptx|All files (*.*)|*.*; /判斷是否選擇文件,如果選擇,則繼續(xù)進行操作 if (fileDialog.ShowDialog()=DialogResult.OK) /獲取文件夾包括路徑的全部名稱 string file = fileDialog.FileName; textBox2.Text = file; Filter屬性:用來獲取或設(shè)置當(dāng)前文件名篩選器字符串,該字符串決定對話框的【另存為文件類型】或【文件類型】框中出現(xiàn)的選擇內(nèi)容。對于每個篩選選項,篩選器字符串都包含篩選器說明、垂直線條(|)和篩選器模式。不同篩選選項的字符串由垂直線條隔開,例如: “文本文件(*.txt)|*.txt|所有文件(*.*)|*.*” 。還可以通過用分號來分隔各種文件類型,可以將多個篩選器模式添加到篩選器中,例如: “圖像文件(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG; *.GIF|所有文件(*.*)|*.*” 。/ / 選擇要進行轉(zhuǎn)換的文件夾 / / / private void button_SelectFile_Click(object sender, EventArgs e) /通過此類來獲得彈出一個文件夾,獲得一個文件夾,并得到文件夾的信息 FolderBrowserDialog dialog = new
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國耐藥銅綠假單胞菌感染藥物行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國網(wǎng)站易訪問性軟件行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國綠茶行業(yè)市場需求供給深度調(diào)研報告
- 2025-2030年中國經(jīng)皮氧監(jiān)測儀行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國紙幣回收機行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國纖板行業(yè)市場現(xiàn)狀分析及競爭格局與投資發(fā)展研究報告
- 2025-2030年中國精密灌溉行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 工業(yè)級電池租賃與回購服務(wù)合同
- 海外代購商品質(zhì)量檢測與糾紛解決合同
- 物聯(lián)網(wǎng)物聯(lián)網(wǎng)工程師人才培養(yǎng)與輸送合同
- 特種設(shè)備-叉車應(yīng)急預(yù)案
- 粘土心墻土石壩設(shè)計計算書
- 2025黔西南民族職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試題庫
- 骨傷科中醫(yī)臨床路徑(試行版)19個住院病種
- 糖尿病患者體重管理專家共識(2024版)
- ICD-10第4章:內(nèi)分泌、營養(yǎng)和代謝疾病
- 機械加工生產(chǎn)流程
- 第三章 第一節(jié) 世界的海陸分布說課稿-2024-2025學(xué)年湘教版初中地理七年級上冊
- 病退委托書范本
- 如何預(yù)防夏季胃腸道疾病
- 公益性崗位申請書四篇
評論
0/150
提交評論