[英]store byte[] into file C#
我有這個功能,一次讀取一個網站名稱,並為每個 url 創建一個對象數組,其中從網頁接收的網站名稱和字節保存到數組中。 然后將該數組保存到名為“saveData.txt”的 txt 文件中
string[] readText = File.ReadAllLines("new.txt");
foreach (string s in readText)
{
object[] url = new object[2];
url[0] = s;
url[1] = displayByteCode(s);
using (StreamWriter writer = new StreamWriter("saveData.txt",true))
{
writer.WriteLine(url[0]+" "+ url[1]);
}
}
displayByteCode 是一個函數,如下所示:
public byte[] displayByteCode(string getURLCode)
{
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(getURLCode);
myRequest.Method = "GET";
WebResponse myResponse = myRequest.GetResponse();
MemoryStream ms = new MemoryStream();
myResponse.GetResponseStream().CopyTo(ms);
byte[] data = ms.ToArray();
return data;
}
它是返回從網站收到的字節。 雖然網址已正確保存。 字節保存為“System.Byte[]”如何保存實際字節而不是這個? 感謝您的幫助!
當您在字符串和對象上調用 + 運算符時,它會對該對象調用 toStirng 方法(這就是它在文件上寫入 System.Byte[] 的原因)
你不能在 C# 中同時寫字符串和字節,為了存儲字節,你可以使用:
File.WriteAllBytes("saveData.txt", (byte[])url[1]);
或者您可以將其轉換為字符串並存儲它:
writer.WriteLine(url[0]+" "+ Convert.ToBase64String((byte[])url[1]));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.