C# 如何在ASP.net网页的服务器端读取/写入文本文件?
我试着运行这个C# 如何在ASP.net网页的服务器端读取/写入文本文件?,c#,javascript,asp.net,file,google-maps,C#,Javascript,Asp.net,File,Google Maps,我试着运行这个 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Text; using System.IO; public partial class _Default : System.Web.UI.Page { protected vo
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Text;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DosyadanOku("c:\\sucdefteri.txt");
Console.ReadLine();
}
public void DosyadanOku(string sucdefteri)
{
StreamReader dosyaOku = new StreamReader(@"C:\\sucdefteri.txt");
string metin;
metin = dosyaOku.ReadLine();
string kesme = "\t";
char[] b = kesme.ToCharArray();
string[] satirlar = metin.Split(b);
Page.ClientScript.RegisterArrayDeclaration("Skills", satirlar[2]);
dosyaOku.Close();
}
}
在ASP.net页面的服务器端。这只是从sucdefteri.txt中获取一行,然后剪切其中的一部分,并使用
Page.ClientScript.RegisterArrayDeclaration(“Skills”,satirlar[2])。我是说它应该,但它不能。如果我尝试将此文件作为一个控制台应用程序来读取/剪切代码,它工作得很好,从行中获取部件并将其打印到控制台。但这不起作用。如果我添加这样的代码
satirlar[2] ="'izmit'";
然后将它发送给客户,它正在工作。所以我认为文件读取有问题
感谢您的帮助。使用Server.MapPath(“”
像这样
StreamWriter _testData = new StreamWriter(Server.MapPath("~/data.txt"), true);
_testData.WriteLine(TextBox1.Text); // Write the file.
_testData.Flush();
_testData.Close(); // Close the instance of StreamWriter.
_testData.Dispose(); // Dispose from memory.
这个问题似乎不清楚,但我相信您希望在asp.net中读/写一个文本文件。如果是,请尝试以下操作:
public void WriteTextFile(String FileName)
{
TextWriter objTextWriter= new StreamWriter(FileName);
objTextWriter.WriteLine(DateTime.Now); //Writing current time in textfile
objTextWriter.Close();
}
public String ReadTextFile(String FileName)
{
Textreader objTextReader= new StreamReader(FileName);
String fileContent = objTextWriter.ReadLine();
objTextReader.Close();
return fileContent;
}
由于本地驱动器C:\的原因,您试图在控制台应用程序上读取的文件将正常工作,但在web上或通过web,本地应用程序上的文件路径并不总是与服务器上的文件路径匹配,您需要查找server.MapPath()方法的工作方式。。这会不会让老师改变了我的文本路径,现在就使用Server.MapPath()。但是我看不懂这个文件。那是我的问题。我的意思是我正在使用StreamReader dosyaOku=newstreamreader(Server.MapPath(“~/sucdefteri.txt”);现在,它找到了路径,但可能由于某种原因,它无法打开或无法从中获取任何信息。也许我的文件读取代码有问题?我应该从这个代码块中得到什么?我是说它能做什么?我不明白。如果你使用Server.MapPath(),它会在服务器上创建文件。如果你不使用,它会在本地计算机上创建文件。我明白,但它仍然不工作。你能检查一下我的阅读代码吗?可能是有问题吧?欢迎来到SO。您应该避免只链接到资源而不在此处详细说明内容。如果链接消失,答案就不再有用了。明白了。谢谢正如链接中所示,您可以使用System.IO命名空间中的TextReader和TextWriter类,从textfile读取数据并将数据写入textfile。对不起,您错过了我评论的要点。您应该编辑答案,以包含链接资源中提供的源代码。这将使你的答案更有价值,因为人们不必跟随链接去获得它,也不必离开它。这也意味着,如果链接中断(经常发生),那么源代码示例仍将包含在这里,因此您的答案可能仍然有用。更好的是,谢谢您,再次欢迎使用SO,如果您需要更多关于SO的帮助,请务必签出并