草庐IT

lines_std

全部标签

c++ - 如何获取 %AppData% 路径作为 std::string?

我读到可以使用SHGetSpecialFolderPath();获取AppData路径。但是,它返回一个TCHAR数组。我需要一个std::string。如何将它转换为std::string?更新我读到可以使用getenv("APPDATA"),但它在WindowsXP中不可用。我想支持WindowsXP-Windows10。 最佳答案 Ttype表示SHGetSpecialFolderPath是一对函数:SHGetSpecialFolderPathA适用于WindowsANSI编码char基于文本,以及SHGetSpecialFo

windows - 批处理 : delete line feed from end of text file using filepaths

这个问题与这个问题相关:Batch:deletelinefeedfromendoftextfile?所以我有一个包含一些信息的txt文件,我想删除最后一行LFCR(换行,回车)字符。我需要使用变量和文件名作为参数(%1)指出源文件路径和目标文件路径。批号@echooffset@srcfile="D:\AgrCC\AgrTest\ReportResults\%1"set@dstfile="D:\AgrCC\AgrTest\DataExport\%1"setlocalDisableDelayedExpansionset"firstLineReady="(for/F"eol=$delims=

windows - 适用于 Windows 的 VIM : How to edit to the end of line but before EOL character

我正在尝试做的事情:例如,我的代码中有一行看起来像这样something.something()我想在它周围添加print():print(something.something())我是怎么做到的:我在vim中输入:^c$print()P意思是:将光标置于行首,改变整行,输入print(),将整行粘贴回print的)之前。问题:不幸的是,c$部分也删除了EOL字符。因此,后续的P操作只会将该行粘贴到print()之上。所以最终的结果会是这样的:something.something()print()我的想法:现在的解决方法是使用v模式首先突出显示除EOL字符之外的整行,然后执行上述操

c++ - std::tr1::shared_ptr 是否互斥?

我有一个包含BYTE*的类,一个引用计数器和一个CRITICAL_SECTION这可以保护它们免受并发访问。我想用std::tr1::shared_ptr替换所有这些.MSDN说:Multiplethreadscanreadandwritedifferentshared_ptrobjectsatthesametime,evenwhentheobjectsarecopiesthatshareownership.一切听起来都很好,直到我发现CRITICAL_SECTIONfromclass在它的外部使用来“锁定”它并以互斥的方式改变它的内容。好的,它破坏了封装,我想改变它。我知道share

windows - 错误 :Parse output of a command in windows command line file

我正在尝试解析命令行脚本中命令的输出。作为开始,我必须首先在变量中捕获命令的输出(我猜)。所以这是我到目前为止所写的内容:FOR/F"tokens=2*delims="%%AIN('wmicprocesswhere(name="javaw.exe")getcommandline')DOSETVAR=%%Becho%VAR%wmicprocesswhere(name="javaw.exe")getcommandline是我要执行并保存输出的命令。但是执行此操作时出现以下错误。getwasunexpectedatthistime关于错误原因的任何想法。以及将输出存储在变量中后我该如何继续。

regex - 如何 : Searching for a string in a file from the Windows command line?

有没有办法在目录及其子目录的文件中搜索字符串?字符串比较独特。我想返回字符串的名称,并希望返回字符串在文件中所在的行。Windows中是否内置了用于执行此操作的任何内容? 最佳答案 您正在寻找内置的findstrcommand./S选项执行递归搜索。 关于regex-如何:SearchingforastringinafilefromtheWindowscommandline?,我们在StackOverflow上找到一个类似的问题: https://stacko

windows - 杂技 Actor (阅读器): to open at a specific page number via command line on Windows

我正在运行Windows批处理文件以将文档转换为PDF,在批处理文件的最后一行我有:Acrobat“%1.pdf”这可以很好地打开生成的PDF文件,但我也希望能够在文档的某些特定页面打开PDF文件。那么如何扩展我在上面使用的命令以强制PDF文件在所需的页码处打开?非常感谢... 最佳答案 使用命令行开关/A:Acrobat/A"page="%1.pdf替换为您希望显示的任何页面。其他开放参数请引用Adobe的合作伙伴文档:http://partners.adobe.com/public/developer/en/acrobat/PD

windows - Vim(7.3.3 Windows 64 位): Add ^M to end of line if there is none (ff=unix)

我有大约100,000多个文件,其中包含部分损坏的数据、混合文本+二进制文件(带有httpheader的jpg图像数据的单个文件),其中一些header字段具有dos样式^M^J行终止,而一些仅unix风格^J。当vim打开这样的文件时,它会将其视为unix格式。因此,所有没有^M的标题行都需要添加一个。但这已被证明是非常艰难的。:1,11s/Cache-Control:.*\zs^M\{0,}$/^M/不起作用,我已经尝试了各种变体,甚至使用\=printf("%s","^M")作为替换字符串。但结果始终是文件中的新空行。我能够通过命令添加^M的唯一方法是通过:exe"normalA

c++ - C 字符串和 std::string 之间的转换导致平台特定方式出现乱码

我今天正在处理一个特定于平台的错误,在这个错误中,在Windows机器上某个字符串会非常乱码,但在Mac上则不会。该错误与在std::string和constchar*之间进行显式和隐式转换的几行有关。基本上,我有一个带有签名的函数voidfoo(conststd::string&id);foo在某些时候打印字符串。在Windows上,如果像下面这样调用,它会打印带有不同程度损坏的id字符串(混淆前几个字符或整个字符串)std::stringmystring=bar();constchar*id=mystring.c_str();foo(id);//passtheCstylestrin

Windows 批处理 : how to check if a text file is blank (the file has an empty line so size is non zero)

文件的问题是它有时包含一个空行,因此大小不为零。我试过了,但是因为它有一个空行,所以它返回1而不是0。有什么解决方法的建议吗?set/avarTestPoints=0for/f%%ain('type"file.txt"^|find""/v/c')doset/avarTestPoints=%%a 最佳答案 大小可以用检查for%%ain("file.txt")doecho%%~za其中%%~za是%%a引用的文件大小要测试文件是否只包含空行,可以使用这些命令中的任何一个(for/fusebackq^eol^=%%ain("file.t