从本地文本文件读入C#?

从本地文本文件读入C#?,c#,asp.net,C#,Asp.net,我已经搜索并只在console中找到了这些信息,但我想知道是否可以将本地计算机上的文件中的文本读入代码,格式化并显示在屏幕上?我们有一个包含一些法律术语的文本文件,可以定期更新,我们不想让用户筛选代码,我们只想更新文本文件并在线应用更改 谢谢 编辑:感谢大家的评论,这里是一个编辑的要求。该程序位于C#ASP.NET网站上。我读过很多关于在控制台中实现这一点的文章,但我不知道如何让它为我工作。再次感谢大家的贡献。这里有两种在.Net中工作的方法 var legal = File.ReadAllTe

我已经搜索并只在console中找到了这些信息,但我想知道是否可以将本地计算机上的文件中的文本读入代码,格式化并显示在屏幕上?我们有一个包含一些法律术语的文本文件,可以定期更新,我们不想让用户筛选代码,我们只想更新文本文件并在线应用更改

谢谢


编辑:感谢大家的评论,这里是一个编辑的要求。该程序位于C#ASP.NET网站上。我读过很多关于在控制台中实现这一点的文章,但我不知道如何让它为我工作。再次感谢大家的贡献。

这里有两种在.Net中工作的方法

var legal = File.ReadAllText(@"C:\Legal\Legalease.txt");

// Or from the CWD of where the program is executing

var legal = File.ReadAllText(Path.Combine(Environment.CurrentDirectory, "Legalease.txt"));

更新
请记住,Asp.Net是作为在该网站的IIS应用程序池中定义的用户运行的。如果用户对文件存在的位置没有读取权限,则无法读取该文件。确保在网站的应用程序池中定义的用户有权读取文件,并验证文件是否已发布到读取位置。

您拥有完整的程序(ASP.net)。您必须在ASP.net应用程序中的
App\u Data
文件夹中有一个文件,在此应用程序中,您的文件名“Details.txt,该文件应位于
App\u Data
文件夹中

网页中有隐藏字段和可用段落。加载表单时,此时从文本文件读取数据并填充到隐藏字段控件。在
$(document).ready()中,Jquery函数将数据从隐藏字段填充到段落中

您的
.aspx
页面:

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
    CodeBehind="Default.aspx.cs" Inherits="ReadFromTextFileToTextBoxWebApp._Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
  <style type="text/css" >
   .details
   {
       background-color:Purple;color:yellow;top: 100px;
   }
   .txtDetails
   {
       left:150px;width:200px;height:100px;
   }
  </style>
  <script src="Scripts/jquery-1.8.3.min.js" type="text/javascript"></script>
  <script type="text/javascript" language="javascript">
      $(document).ready(function () {
          var data = $("#<%=HiddenField1.ClientID %>").val();
          $('#pTextData').text(data);
      });

</script>
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <h2>
        Welcome to ASP.NET!
    </h2>
     <div>
        <asp:HiddenField ID="HiddenField1" runat="server" />
        <p id="pTextData">
        </p>
     </div>
</asp:Content>

你试过什么?你有什么问题?你是在问如何读取文件吗?如何操作字符串?如何使用
文本框
?您是否看到了的第一个结果?感谢链接。我想知道这是否只是一个控制台,或者也可以在.NET中完成?当我在代码中运行时,它似乎不起作用。
System.IO.File
可以从任何类型的.NET项目中使用。这是绝对可以做到的,但您在这里的要求太模糊了。例如,控制台应用程序可以在.NET中编写。你是说ASP.NET网站吗?如果是这样的话,诀窍就是让站点中的一些代码隐藏文件执行与控制台代码相同的工作,而不是将内容写入控制台窗口,而是使用某种控件(如标签或文本框)将内容写入正在呈现的页面。谢谢!我在Visual Studio的项目文件夹中有legal.txt文件,但当我更改文件名时,仍然会出现一个错误,无论我使用的是top方法还是bottom方法,都会显示“找不到文件'C:\Windows\SysWOW64\inetsrv\legal.txt'”。@Peter您说该文件在您的项目中,但如何将其复制到inetsrv目录?asp.net进程是否具有从inetsrv目录读取的权限?我建议您将legal.txt文件包含在网站中,并在本地阅读。如果更新的
StreamReader是另一种速度非常快的方式,请不要忘记将项目中的文件属性从
Copy to Output Directory
更改为
Copy。@StingyJack StreamReader没有问题,它提供了对操作的更多控制。为OP提供一个例子:-)是的,请!谢谢大家!!我知道这相当简单。解决方案中的文本文件,代码读取它,然后显示它。但出于某种原因,我有这些问题。再次感谢!伟大的最后一个问题。可以格式化吗?它可能只需要在段落中,但是什么是最好的方式来设置所读文本的样式呢?是的,Peter,就像我在文本框中显示的一样。您可以对其他控件执行相同的操作。看,如果你问我哪一个控件是显示数据的最佳控件(如果你的数据为只读-意味着你不打算编辑数据),那么最好使用label控件。添加css类并设置该label控件的样式。如果你得到了答案,请勾选它,将其标记为已回答。谢谢,但我如何将文本格式设置为段落?我只是想告诉你。请看,如果您想编辑数据,那么最好使用具有漂亮css外观的文本框,为什么我要告诉您使用服务器控件,因为与简单的静态html控件相比,服务器控件具有更多的优势。您可以为服务器控件应用javascript以及服务器端代码,服务器端代码(如以db/xml格式存储的数据或提供给Web服务的数据)等等。但是,如果您希望数据位于html段落中,则可以在表单加载时进行ajax GET调用,并将数据绑定到段落。@Alex很高兴这对您有所帮助。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

namespace ReadFromTextFileToTextBoxWebApp
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var data = File.ReadAllText(Server.MapPath("~/App_Data/Details.txt"));
            HiddenField1.Value = data.ToString();   
        }           
    }
}