请教="D:\Java\c"如何转换D:\\Java\\c

llt91145 2009-08-10 04:33:56
CString s="D:\Java\c";
请问如何转换成"D:\\Java\\c",无法用replace,并且CString('\');的表达式也有错误
在线求解,谢谢各位大虾了
...全文
172 23 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
arong1234 2009-08-10
  • 打赏
  • 举报
回复
感觉18楼的应该对,如果你选择的文件没有在路径中包含空格的话
[Quote=引用 22 楼 llt91145 的回复:]
提示路径错误,谢谢了
[/Quote]
llt91145 2009-08-10
  • 打赏
  • 举报
回复
提示路径错误,谢谢了
rdsnow 2009-08-10
  • 打赏
  • 举报
回复
貌似没有哪里有必要做这样的修改!

"\\"只是给编译器看的,在内存里就是一个 "\"
rendao0563 2009-08-10
  • 打赏
  • 举报
回复
个人觉得你还是自己摸索一下。不然你连这个都没弄明白以后怎么做开发。都有那么个过程。不要急。
flymoon99 2009-08-10
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 llt91145 的回复:]
引用 11 楼 rendao0563 的回复:
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了

这里filename是字符串不是你定义的变量。。。这都分不清楚?

那请问我该怎么传参数?
[/Quote]

system("D:\\miao\\hash.exe -filename");//试下这个,加个-
dengxuxing 2009-08-10
  • 打赏
  • 举报
回复
CString filename = dlg.GetPathName();
filename="D:\\miao\\hash.exe "+filename;
system(filename );


flymoon99 2009-08-10
  • 打赏
  • 举报
回复
\的作用就是作为转义字符用的,字符串中的\\就是一个\的意思。
如果你要申明一个字符串中带有\的话,就必须用\\
另外,同理,/也必须用\/来表示
llt91145 2009-08-10
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 rendao0563 的回复:]
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了

这里filename是字符串不是你定义的变量。。。这都分不清楚?
[/Quote]
那请问我该怎么传参数?
MoXiaoRab 2009-08-10
  • 打赏
  • 举报
回复
差不多
幸福官 2009-08-10
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 rendao0563 的回复:]
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了

这里filename是字符串不是你定义的变量。。。这都分不清楚?
[/Quote]

这位兄弟眼睛比较敏锐!
llt91145 2009-08-10
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 arong1234 的回复:]
这个不需要转换的,手写的代码和通过dlg.GetPathName获得的情况是不需要的。后者你看到的虽然是单个\,但是实际上已经等价于你手写时的2个反斜杠了。如果你遇到错误,应该时另外有问题
引用 7 楼 llt91145 的回复:
这是部分代码
CFileDialog  dlg(TRUE,
            _T("bmp"),
            _T("*.bmp"),
                OFN_EXPLORER,
                _T("图像文件(*.jpg)|*.jpg|文本文件(*.bmp)|*.bmp|所有文件(*.*)|*.*|"));

if( IDOK == dlg.DoModal() ){ 
CString  filename = dlg.GetPathName();
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了

[/Quote]


system("D:\\miao\\hash.exe D:\\新建文件夹\\pic1.JPG");

但这么用情就可以出来结果,是不是参数传递问题?
lpaxuexi 2009-08-10
  • 打赏
  • 举报
回复
函数名: system
功 能: 发出一个DOS命令
用 法: int system(char *command);
system函数已经被收录在标准c库中,可以直接调用
程序例:
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
printf("About to spawn command.com and run a DOS command\n");
system("dir");
return 0;
}

命令写好
rendao0563 2009-08-10
  • 打赏
  • 举报
回复
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了

这里filename是字符串不是你定义的变量。。。这都分不清楚?
llt91145 2009-08-10
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lygfqy 的回复:]
首先在c中赋值就不应该采用\来进行,因为它代表的是转义字符,如果要赋值成\应该采用\\
[/Quote]
str.replace("\\", "\\\\");
这么写还是出错~,我是新手,各位帮帮忙吧
arong1234 2009-08-10
  • 打赏
  • 举报
回复
这个不需要转换的,手写的代码和通过dlg.GetPathName获得的情况是不需要的。后者你看到的虽然是单个\,但是实际上已经等价于你手写时的2个反斜杠了。如果你遇到错误,应该时另外有问题
[Quote=引用 7 楼 llt91145 的回复:]
这是部分代码
CFileDialog  dlg(TRUE,
            _T("bmp"),
            _T("*.bmp"),
                OFN_EXPLORER,
                _T("图像文件(*.jpg)|*.jpg|文本文件(*.bmp)|*.bmp|所有文件(*.*)|*.*|"));

if( IDOK == dlg.DoModal() ){ 
CString  filename = dlg.GetPathName();
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了
[/Quote]
llt91145 2009-08-10
  • 打赏
  • 举报
回复
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了
如果用对的话会输出信息,但得到的只有黑屏,exe本身没有问题的
llt91145 2009-08-10
  • 打赏
  • 举报
回复
这是部分代码
CFileDialog dlg(TRUE,
_T("bmp"),
_T("*.bmp"),
OFN_EXPLORER,
_T("图像文件(*.jpg)|*.jpg|文本文件(*.bmp)|*.bmp|所有文件(*.*)|*.*|"));

if( IDOK == dlg.DoModal() ){
CString filename = dlg.GetPathName();
system("D:\\miao\\hash.exe filename");//这里我直接调用的话就出错了
danxuezx 2009-08-10
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 fishion 的回复:]
你是怎么得到的
[/Quote]
up
lpaxuexi 2009-08-10
  • 打赏
  • 举报
回复
自己写个函数,碰到 '\'就转成 \\。不知道是不是能达到你的目的?
fishion 2009-08-10
  • 打赏
  • 举报
回复
你是怎么得到的
加载更多回复(3)

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧