草庐IT

file-find

全部标签

c++ - 为什么 std::remove for file 总是返回 -1?

我正在尝试删除一个文件(如果存在)。所以首先我测试文件是否存在,如果存在我使用std::remove删除它。.test.json中包含一些json相关的txt。我还有#include包括在内。std::stringfile_to_remove="test.json";std::ifstreamf(file_to_remove.c_str());if(f.good()){intval=std::remove(file_to_remove.c_str());std::cout我原以为retval是0但我得到-1我当前的输出是:Removingfile:test.json:retval:-1

windows - 我怎么知道 find_package() 在 cmake 中是否成功?

find_package(GTK)如何让它输出一些东西,以便我知道它是否找到了东西?平台:windowsXP 最佳答案 您可以使用message命令如:FIND_PACKAGE(GTK)IF(${GTK_FOUND})MESSAGE(STATUS"FoundGTK.")ELSE(${GTK_FOUND})MESSAGE(STATUS"CouldnotlocateGTK.")ENDIF(${GTK_FOUND})或者,如果您希望它在未找到GTK时中止:FIND_PACKAGE(GTK)IF(${GTK_FOUND})MESSAGE(S

windows - grunt "Error: Cannot find module ' ../time/convert'(仅在 Windows 上)

在linux下建立一个新的angular项目。将其提交到git并将其克隆到windows。使用bower和npm,我设法加载了所有内容,除了我有一个错误(仅在Windows上)项目中../time/convert的递归grep显示:./node_modules/grunt-contrib-imagemin/node_modules/gifsicle/node_modules/bin-wrapper/node_modules/mout/date/diff.js:varconvert=require('../time/convert');./node_modules/grunt-contr

regex - Perl one liner corrupts file in Windows (carriage-return related issue)

我有一个PostScript文件,我想在其中更改一行:%%Title:myabc到%%Title:yourdef下面的Perloneliner在Ubuntu中成功了:perl-p-ifoo.bak-e"s/%%Title:.+\n/%%Title:yourdef\n/"file.ps但它会破坏Windows中的文件(看起来它会将\r\n添加到每个“行”或类似的东西)。我尝试了另一种方法,但在Windows中仍然没有成功:perl-Mopen=OUT,:bytes-p-ifoo.bak-e"s/%%Title:.+\n/%%Title:yourdef\n/"file.ps这是怎么回事,我

windows - Ruby 1.9.2 Find.find 编码

我知道您可以执行Dir.entries('.',{:encoding=>'utf-8'})并且它可以正常工作,但我找不到任何方法在执行Find.find时强制编码。在Windows上,第一种方法正确读取了一个文件名舦舨.txt,并且对该值执行File.file?返回true。但是,执行Find.find会返回??.txt,即使ruby​​说它的编码是utf-8。此外,File.file?返回false。没有办法在Find.find上设置编码吗? 最佳答案 代替Find.find(dir)我找到了Find.find(dir.encod

java - 在 Windows 7 上从 Java 启动 CYGWIN 构建的可执行文件失败并显示 "error while loading shared libraries: ?: No such file or directory"

有问题的代码在早期版本的Windows上或多或少地以完全相同的配置工作,但是,还不知道它是否可以在Windows7上运行!这就是我现在需要解决的问题。简而言之,一些C代码在启动Java程序之前执行一些配置和安全检查,传递一些在Java中几乎不可能轻松完成的数据。反过来,Java在适当的时间启动相同的C代码,然后它自己启动一个不同的Java程序。第二个程序启动需要完全独立,(想想nohup)因此是第二个启动。现在发生的事情是C程序以普通方式启动Java程序,但是当Java尝试启动C程序时,它会出现如下错误:/cygdrive/c/opt/ST/v3.3/bin/ST.exe:errorw

php - Windows cygwin gearman ./configure 显示 "configure: error: Unable to find libevent"错误

我正在尝试安装gearmanhttp://www.phpvs.net/2010/11/30/installing-gearman-and-gearmand-on-windows-with-cygwin/我下载了“libevent-2.0.21-stable.tar.gz”解压到cygwin的home/libs目录(我自己建了一个libs目录)里面还有“gearmand-1.1.5”。然后,在我执行的libevent目录中:./configuremakemakeinstall安装libevent后,我​​切换到gearman目录并执行:./configure这导致“配置:错误:无法找到l

我可以获得内存中已有数据支持的 FILE* 吗?

我的代码目前使用一个库,我将FILE*传递给该库,它使用fread()CRTAPI读取一堆复杂的配置数据。我想移动文件以成为文件中的嵌入式资源(WindowsDLL)。不幸的是,读取Windows资源会直接将数据作为void*....我无法传递给图书馆。我想要的是能够获得一个由内存缓冲区而不是磁盘上的文件支持的FILE*。Windows有CreateStreamOnHGlobal(),但它使用IStream*,我需要一个FILE*。不幸的是,我找不到适用于Windows的任何解决方案。这可能吗?我可以使用的解决方案是将资源数据写入临时文件,将临时文件传递给配置解析器,然后删除文件...

windows - powershell 看不到文件系统更改 - "cannot find path"

我编写了一个powershell脚本,可以从DynamicsNAV实例中导出一堆文件。它调用我也编写的perl脚本,然后将所有文件拆分为单独的对象,并将它们粘贴到我在perl中创建的目录下的子目录中。然后powershell脚本尝试将文件复制到不同的目录,但失败了。Powershell生成目录名称:$datestamp=get-date-fMM-dd-yyyy_HH_mm_ss$dumpdir="\temp\nav_export\"+$env:username+"\"+$servicetier+"~"+$database+"~"+$datestamp;然后powershell做了一堆工

c++ - 将 FILE * 或 HANDLE 转换(分配)到 Windows 中的 IStream

想要编写一个函数,该函数期望一个文件的打开句柄,并且出于某些目的将其转换为IStream以与Wrapper库进行交互我知道的一种方法是,我可以从HANDLE获得一个FILE*,但是我没有得到任何方法来将此FILE*或HANDLE直接转换或分配给IStream(COM)。 最佳答案 你可以试试getfilenamefromHANDLE然后createIStream从路径。 关于c++-将FILE*或HANDLE转换(分配)到Windows中的IStream,我们在StackOverflow