gpt4 book ai didi

c++ - 在 Qt 中将文件保存到网络

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:31:00 24 4
gpt4 key购买 nike

我需要将文件保存到我公司的网络中。这需要编码到我的应用程序中,而不是使用文件对话框或任何东西。当我在没有指定路径的情况下保存文件时,它会将它完全保存在我的应用程序所在的目录中,但是当我尝试这样做时,网络没有任何反应。这是我要保存的。

QFile outfile;
outfile.setFileName("//DTPRIMARY/MyFile.htm");
outfile.open(QIODevice::WriteOnly);
QTextStream out(&outfile);
out << textEdit->toHtml();
out.flush();
outfile.close();

我实际上想将它保存在这里 \\DTPRIMARY\Inetpub\wwwroot 但是取出了其他文件夹,认为这可能是问题的一部分,但事实并非如此。而且我使用'/'而不是'\'因为那是一些地方所说的(我从来没有真正理解为什么文件路径必须使用'\'或'/'虽然它可能是错误的同上。)

有谁知道该怎么做/我的代码有什么问题吗?

最佳答案

UNC 路径应该可以正常工作,您可以使用本地文件进行测试,例如 "\\?\C:\MyFile.htm" 将是一个名为 MyFile.htm 的文件,位于C盘

通常路径是 \\machine\share 例如 \\dtprimaray\share\MyFile.htm

之所以用“/”是因为C语言用\表示下一个字符是特殊的,所以\t是制表符,\n是换行符。 DOS 被复制(抱歉 影响)早期的操作系统使用“/”作为文件分隔符,Microsoft 不希望 DOS 看起来太像一个拷贝。从那以后,它一直是错误的来源。

您可以使用 \\ 告诉 C 下一个\确实是一个\- 但是当您必须将 \\\\ 写入到时很容易出错表示 \\\\ 表示 \ - 所以 Windows 允许您使用 /

刚在我的机器上测试过

QFile file("//machinename/downloads/MyFile.htm");
file.open(QIODevice::WriteOnly);
file.write("blah");
file.close();

关于c++ - 在 Qt 中将文件保存到网络,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12061818/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com