📜  ASP.NET WP-使用文件

📅  最后修改于: 2020-11-21 05:33:25             🧑  作者: Mango


在本章中,我们将介绍如何在网站中使用文本文件。您可以使用文本文件作为存储网站数据的简单方法。

  • 文本文件可以采用不同的格式,例如* .txt,*。xml或* .csv。

  • 您可以使用File.WriteAllText方法指定要创建的文件,然后向其中写入数据。

  • 您可以在文本文件中读取/写入数据或将数据移动到文本文件。

将数据写入文件

让我们看一个简单的示例,在该示例中,我们会将学生信息写入文本文件。首先,我们需要创建一个新的CSHTML文件

学生资料

在名称字段中输入TextData.cshtml ,然后单击“确定”继续。在此示例中,我们将创建一个简单的表单,用户可以在其中输入学生信息,例如名字,姓氏和标记。

我们还需要在App_Data文件夹中使用Data.txt名称创建一个文本文件

TextData CSHTML

让我们在TextData.cshtml文件中替换以下代码。

@{
   var result = "";
   
   if (IsPost){
      var firstName = Request["FirstName"];
      var lastName = Request["LastName"];
      var marks = Request["Marks"];
      var userData = firstName + "," + lastName + "," + marks + Environment.NewLine;
      var dataFile = Server.MapPath("~/App_Data/Data.txt");
      File.WriteAllText(@dataFile, userData);
      result = "Information saved.";
   }
}



   
   
      Write Data to a File
   
   
   
      
First Name:
Last Name:
Marks:
@if(result != ""){

Result: @result

}

在代码中,我们使用IsPost属性确定页面在开始处理之前是否已提交。 File对象的WriteAllTex t方法采用两个参数,即文件名路径和要写入文件的实际数据。

现在,让我们运行该应用程序并指定以下URL- http:// localhost:36905 / TextData ,您将看到以下网页。

输入数据

让我们在所有字段中输入一些数据。

提交按钮

现在单击提交按钮。

信息已保存

如您所见,信息已保存,现在让我们打开Data.txt文件,您将看到数据已写入文件中。

数据发送

将数据追加到现有文件

为了将数据写入文本文件,我们使用了WriteAllText。如果再次调用此方法并将其传递给相同的文件名,则它将完全覆盖现有文件。但是在大多数情况下,我们通常希望将新数据添加到文件的末尾,因此我们可以使用文件对象的AppendAllText方法来实现。

让我们看一下同一示例,我们将只将WriteAllText()更改为AppendAllText(),如以下程序所示。

@{
   var result = "";
   
   if (IsPost){
      var firstName = Request["FirstName"];
      var lastName = Request["LastName"];
      var marks = Request["Marks"];
      var userData = firstName + "," + lastName + "," + marks + Environment.NewLine;
      var dataFile = Server.MapPath("~/App_Data/Data.txt");
      File.AppendAllText(@dataFile, userData);
      result = "Information saved.";
   }
}



   
   
      Write Data to a File
   
   
   
      
First Name:
Last Name:
Marks:
@if(result != ""){

Result: @result

}

现在,让我们运行该应用程序并指定以下URL http:// localhost:36905 / TextData ,您将看到以下网页。

输入一些数据

输入一些数据,然后单击提交按钮。

现在,当您打开Data.txt文件时,您将看到数据已附加在该文件的末尾。

追加数据

从文件读取数据

要从文件中读取数据,可以使用File对象,然后调用ReadAllLines() ,它将从文件中读取所有行。为此,我们创建一个新的CSHTML文件。

读取数据

在名称字段中输入ReadData.cshtml ,然后单击确定。

现在,在ReadData.cshtml文件中替换以下代码。

@{
   var result = "";
   Array userData = null;
   char[] delimiterChar = {','};
   var dataFile = Server.MapPath("~/App_Data/Data.txt");
   
   if (File.Exists(dataFile)) {
      userData = File.ReadAllLines(dataFile);
      if (userData == null) {
         // Empty file.
         result = "The file is empty.";
      }
   } else {
      // File does not exist.
      result = "The file does not exist.";
   }
}



   
   
      Reading Data from a File
   
   
   
      

Reading Data from a File

@result @if (result == "") {
    @foreach (string dataLine in userData) {
  1. Student
      @foreach (string dataItem in dataLine.Split(delimiterChar)) {
    • @dataItem
    • }
  2. }
}

现在,让我们再次运行该应用程序,并指定以下URL http:// localhost:36905 / ReadData ,您将看到以下网页。

读取数据文件