在C#/ .NET(在Windows上)有没有办法使用文件流读取"增长"文件?打开文件流时文件的长度将非常小,但该文件将由另一个线程写入.如果/当文件流"赶上"到另一个线程时(即Read()返回0字节读取时),我想暂停以允许文件缓冲一点,然后继续读取.
我真的不想使用a FilesystemWatcher并继续创建新的文件流(如日志文件所建议的那样),因为这不是一个日志文件(它是一个即时编码的视频文件),性能是个问题.
谢谢,
罗伯特
如何使用vb.NET或C#下载PDF并存储到磁盘?
URL(PDF)在达到最终PDF之前会进行一些重做.
我试过以下但是当我尝试在本地打开时,PDF似乎已损坏,
Dim PdfFile As FileStream = File.OpenWrite(saveTo)
Dim PdfStream As MemoryStream = GetFileStream(pdfURL)
PdfStream.WriteTo(PdfFile)
PdfStream.Flush()
PdfStream.Close()
PdfFile.Flush()
PdfFile.Close()
Run Code Online (Sandbox Code Playgroud) 有没有办法知道的类型FileStream.我有一个带FileStream对象的函数,我想根据它确定文件扩展名FileStream.
执行异步I/O的旧.Net方式FileStream是使用FileStream.BeginRead()和FileStream.EndRead().
状态的MSDN文档FileStream.BeginRead():
FileStream提供两种不同的操作模式:同步I/O和异步I/O. 虽然可以使用其中任何一种,但底层操作系统资源可能仅允许以这些模式之一进行访问.
默认情况下,FileStream会同步打开操作系统句柄.在Windows中,这会降低异步方法的速度.如果使用异步方法,请使用FileStream(String,FileMode,FileAccess,FileShare,Int32,Boolean)构造函数.
在.Net 4.5x对执行异步I/O的方式FileStream是使用Stream.ReadAsync().
MSDN文档FileStream.ReadAsync()直接链接到文档的链接Stream.ReadAsync().本文档未提及在异步模式下打开文件的任何需要; 实际上,文档中的示例代码显然没有这样做.
因此,我假设在使用时File.ReadAsync()不需要以异步模式打开文件.
这个假设是否正确?
[编辑]
我刚刚发现了一篇关于使用Async for File Access的MSDN文章.
这表明:
本主题中的示例使用FileStream类,该类具有导致在操作系统级别发生异步I/O的选项.通过使用此选项,您可以避免在许多情况下阻止ThreadPool线程.
要启用此选项,请在构造函数调用中指定useAsync = true或options = FileOptions.Asynchronous参数.
所以,现在我在想,我应该可以打开该文件在异步模式......如果是这样,这是有点遗憾的是,在文档中提供的示例代码ReadAsync()并不能打开该文件异步!
我需要一种从流中读取Excel文件的方法.它似乎不适用于ADO.NET的处理方式.
方案是用户通过FileUpload上传文件,我需要从文件中读取一些值并导入到数据库.
由于多种原因,我无法将文件保存到磁盘,也没有理由这样做.
那么,有谁知道从FileUpload流中读取Excel文件的方法?
我正在与HttpWebRequest一起发送文件.我的文件将来自FileUpload UI.在这里,我需要将文件上传转换为文件流,以便与HttpWebRequest一起发送流.如何将FileUpload转换为文件流?
从文件中读取UTF-8编码文本时遇到一些问题.我的版本只读取ASCII字符.
#include <QtCore>
int main()
{
QFile file("s.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
{
return -1;
}
QTextStream in(&file);
while(!in.atEnd())
{
QString line = in.readLine();
qDebug() << line;
}
}
Run Code Online (Sandbox Code Playgroud)
s.txt:
j?ka? si?
?limak
?nie?yca
Run Code Online (Sandbox Code Playgroud)
输出:
"jka si"
"limak"
"nieyca"
Run Code Online (Sandbox Code Playgroud)
我该怎么用?
我想知道是否可以将readonly FileStream转换为锁定文件?我现在尝试读取锁定文件时出现异常.
using (FileStream stream = new FileStream("path", FileMode.Open))
Run Code Online (Sandbox Code Playgroud)
谢谢!
我被要求在C#中执行以下操作:
/**
* 1. Create a MultipartPostMethod
* 2. Construct the web URL to connect to the SDP Server
* 3. Add the filename to be attached as a parameter to the MultipartPostMethod with parameter name "filename"
* 4. Execute the MultipartPostMethod
* 5. Receive and process the response as required
* /
Run Code Online (Sandbox Code Playgroud)
我写了一些没有错误的代码,但是没有附加文件.
有人可以查看我的C#代码,看看我是否错误地编写了代码?
这是我的代码:
var client = new HttpClient();
const string weblinkUrl = "http://testserver.com/attach?";
var method = new MultipartFormDataContent();
const string fileName = "C:\file.txt";
var streamContent = new …Run Code Online (Sandbox Code Playgroud) 我在我的一个项目中使用SQL Server 2008文件流功能,是否有办法使用查询检查文件流状态(如果已启用或未启用)?
filestream ×10
c# ×8
.net ×2
asp.net ×2
file-upload ×2
async-await ×1
beginread ×1
c#-4.0 ×1
c++ ×1
download ×1
excel ×1
filelock ×1
httpclient ×1
pdf ×1
post ×1
qt ×1
sql ×1
sql-server ×1
stream ×1
streaming ×1
utf-8 ×1
vb.net ×1
windows ×1