• C#读写共享文件夹


    该试验分以下步骤:

    1、在服务器设置一个共享文件夹,在这里我的服务器ip地址是10.80.88.180,共享文件夹名字是test,test里面有两个文件:good.txt和bad.txt,访问权限,用户名是admin,密码是admin。

    2、新建一个webapplication项目,在前台页面加一个listbox,ID是ListBox1.

    3、添加后台代码如下:其中包含的功能是读文件,这里以读good 文件为例;写文件,这里以写bad文件为例;还有是将test文件夹下的文件名列到listbox中。 

      1 using System;
      2 using System.Collections.Generic;
      3 using System.Linq;
      4 using System.Web;
      5 using System.Web.UI;
      6 using System.Web.UI.WebControls;
      7 using System.Text;
      8 using System.Diagnostics;
      9 using System.IO;
     10 
     11 
     12 namespace WebApplication2
     13 {
     14 
     15     public class FileShare
     16     {
     17         public FileShare() { }
     18 
     19         public static bool connectState(string path)
     20         {
     21             return connectState(path,"","");
     22         }
     23 
     24         public static bool connectState(string path,string userName,string passWord)
     25          {
     26             bool Flag = false;
     27             Process proc = new Process();
     28             try
     29             {
     30                 proc.StartInfo.FileName = "cmd.exe";
     31                 proc.StartInfo.UseShellExecute = false;
     32                 proc.StartInfo.RedirectStandardInput = true;
     33                 proc.StartInfo.RedirectStandardOutput=true;
     34                 proc.StartInfo.RedirectStandardError=true;
     35                 proc.StartInfo.CreateNoWindow=true;
     36                 proc.Start();
     37                 string dosLine = @"net use " + path + " /User:" + userName + " " + passWord + " /PERSISTENT:YES";
     38                 proc.StandardInput.WriteLine(dosLine);
     39                 proc.StandardInput.WriteLine("exit");
     40                 while (!proc.HasExited)
     41                 {
     42                     proc.WaitForExit(1000);
     43                 }
     44                 string errormsg = proc.StandardError.ReadToEnd();
     45                 proc.StandardError.Close();
     46                 if (string.IsNullOrEmpty(errormsg))
     47                 {
     48                     Flag = true;
     49                 }
     50                 else
     51                 {
     52                     throw new Exception(errormsg);
     53                 }
     54             }
     55             catch (Exception ex)
     56             {
     57                 throw ex;
     58             }
     59             finally
     60             {
     61                 proc.Close();
     62                 proc.Dispose();
     63             }
     64             return Flag;
     65         }
     66 
     67 
     68         //read file
     69         public static void ReadFiles(string path)
     70         {
     71             try
     72             {
     73                 // Create an instance of StreamReader to read from a file.
     74                 // The using statement also closes the StreamReader.
     75                 using (StreamReader sr = new StreamReader(path))
     76                 {
     77                     String line;
     78                     // Read and display lines from the file until the end of 
     79                     // the file is reached.
     80                     while ((line = sr.ReadLine()) != null)
     81                     {
     82                         Console.WriteLine(line);
     83                         
     84                     }
     85                 }
     86             }
     87             catch (Exception e)
     88             {
     89                 // Let the user know what went wrong.
     90                 Console.WriteLine("The file could not be read:");
     91                 Console.WriteLine(e.Message);
     92             } 
     93 
     94         }
     95 
     96         //write file
     97         public static void WriteFiles(string path)
     98         {
     99             try
    100             {
    101                 // Create an instance of StreamWriter to write text to a file.
    102                 // The using statement also closes the StreamWriter.
    103                 using (StreamWriter sw = new StreamWriter(path))
    104                 {
    105                     // Add some text to the file.
    106                     sw.Write("This is the ");
    107                     sw.WriteLine("header for the file.");
    108                     sw.WriteLine("-------------------");
    109                     // Arbitrary objects can also be written to the file.
    110                     sw.Write("The date is: ");
    111                     sw.WriteLine(DateTime.Now);
    112                 }
    113             }
    114             catch (Exception e)
    115             {
    116                 // Let the user know what went wrong.
    117                 Console.WriteLine("The file could not be read:");
    118                 Console.WriteLine(e.Message);
    119             }
    120         }
    121     }
    122 
    123     public partial class _Default : System.Web.UI.Page
    124     {
    125         protected void Page_Load(object sender, EventArgs e)
    126         {
    127             
    128             bool status = false;
    129 
    130             //连接共享文件夹
    131             status = FileShare.connectState(@"\10.80.88.180	est", "admin", "admin");
    132             if (status)
    133             {
    134                 DirectoryInfo theFolder = new DirectoryInfo(@"\10.80.88.180	est");
    135 
    136                 //先测试读文件,把目录路径与文件名连接
    137                 string filename = theFolder.ToString()+"\good.txt";
    138                 FileShare.ReadFiles(filename);
    139 
    140                 //测试写文件,拼出完整的路径
    141                 filename = theFolder.ToString() + "\bad.txt";
    142                 FileShare.WriteFiles(filename);
    143                
    144                 //遍历共享文件夹,把共享文件夹下的文件列表列到listbox
    145                 foreach (FileInfo nextFile in theFolder.GetFiles())
    146                 {
    147                     ListBox1.Items.Add(nextFile.Name);
    148                 }
    149             }
    150             else
    151             {
    152                 ListBox1.Items.Add("未能连接!");
    153             }
    154         }
    155     }}

    转自:http://www.cnblogs.com/ManMonth/archive/2011/10/11/2206998.html

  • 相关阅读:
    EF6的多线程与分库架构设计实现
    Windows环境下安装Ionic
    Win7 下安装RabbitMQ
    在VS Nuget命令行下进行EF数据库迁移
    WebSocket与Tcp连接
    常用浏览器内核
    异步代码
    TCP与UDP的区别
    二分查找(折半查找)
    顺序查找
  • 原文地址:https://www.cnblogs.com/zhulinyixuan/p/3478924.html
Copyright © 2020-2023  润新知