门户
书籍
教程
论坛
问答
下载
签到
个人空间
帐号
自动登录
找回密码
密码
登录
立即注册
账号
自动登录
找回密码
密码
登录
立即注册
请绘制轨迹完成人机验证
由vaptcha提供技术支持
登录
注册
搜索
搜索
搜索
热搜
qml
quick
串口
输入中文
数据库
arm
百度地图
qt聊天
QT安装
安装
多窗口
中文乱码
聊天
局域网
鼠标
QT
图片
乱码
rs485通讯
多线程
android
多文档编辑器
本版
用户
本版
用户
【HUX】问题互助平台
博客
动态
好友
帖子
收藏
道具
勋章
任务
淘帖
动态
日志
相册
分享
记录
留言板
群组
门户
导读
排行榜
设置
我的收藏
退出
Qt开源社区
›
精华区(请在“有问必答”发帖)
›
有问必答
›
程序调试
›
theFileName = fileName.right(fileName.size() - fileN ...
发布主题
返回列表
theFileName = fileName.right(fileName.size() - fileName.lastIndexOf('/')-1);
2
回复
8383
查看
[复制链接]
fga333
当前离线
积分
47
fga333
累计签到:2 天
连续签到:1 天
来源:
2015-10-22 17:48:39
显示全部楼层
|
阅读模式
1
Qter豆
请问大侠,第六行行这句话怎么解释,谢谢了,为什么后面还要减1呢?
//
打开按钮
1 void
TcpServer
::
on_serverOpenBtn_clicked
()
2
{
3
fileName
=
QFileDialog
::
getOpenFileName
(
this
);
4
if
(!
fileName
.
isEmpty
())
5
{
6
theFileName
=
fileName
.
right
(
fileName
.
size
()
-
fileName
.
lastIndexOf
(
'/'
)-
1
);
7
ui
->
serverStatusLabel
->
setText
(
tr
(
"要传送的文件为:%1
"
).
arg
(
theFileName
));
8
ui
->
serverSendBtn
->
setEnabled
(
true
);
9
ui
->
serverOpenBtn
->
setEnabled
(
false
);
10
}
11
}
最佳答案
cai901022
查看完整内容
fileName.right(N)这个函数是取fileName里面,右边的N个字符串。fileName.lastIndexof("/"),是查找fileName中最后出现"/"这个字符的位置。而这句话的意思是将fileName往右边取,从最后出现"/"这个字符的位置开始取。得出的字符串复制给theFileName
回复
使用道具
举报
cai901022
当前离线
积分
450
cai901022
累计签到:344 天
连续签到:1 天
2015-10-22 17:48:40
显示全部楼层
fileName.right(N)这个函数是取fileName里面,右边的N个字符串。fileName.lastIndexof("/"),是查找fileName中最后出现"/"这个字符的位置。而这句话的意思是将fileName往右边取,从最后出现"/"这个字符的位置开始取。得出的字符串复制给theFileName
回复
使用道具
举报
cai901022
当前离线
积分
450
cai901022
累计签到:344 天
连续签到:1 天
2015-10-30 17:31:30
显示全部楼层
简化来说,比如fileName="E:/test/test.txt."那么使用第六行这个函数后,theFileName=“test.txt”.这样清楚吗
回复
使用道具
举报
返回列表
发表新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满)
我知道了