工控编程吧

标题: 上位机MFC如何移动文件 [打印本页]

作者: qq263946146    时间: 2019-8-1 12:41
标题: 上位机MFC如何移动文件
运行文件对应处理函数为MoveFile。函数有两个参数,对应源文件与目标文件。
我们可以自己创建一个工程,添加按钮1,选择源文件
  1. void CDemoDlg::OnTest1()
  2. {
  3.         //创建文件对话框
  4.         CString strFilter = _T("所有文件(*.*)|*.*||");
  5.         CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY |
  6.                 OFN_OVERWRITEPROMPT, strFilter);
  7.         dlg.m_ofn.lpstrTitle = _T("源文件");

  8.         if(dlg.DoModal() == IDOK)
  9.         {
  10.                 //获得源文件路径
  11.                 CString strSourcePathName = dlg.GetPathName();

  12.                 SetDlgItemText(IDC_TEXT1, strSourcePathName);
  13.         }
  14. }
复制代码

添加按钮2,让用户选择目标文件
  1. void CDemoDlg::OnTest2()
  2. {
  3.         //创建文件对话框
  4.         CString strFilter = _T("所有文件(*.*)|*.*||");
  5.         CFileDialog dlg(FALSE, NULL, NULL, OFN_HIDEREADONLY |
  6.                 OFN_OVERWRITEPROMPT, strFilter);
  7.         dlg.m_ofn.lpstrTitle = _T("目标文件");

  8.         if(dlg.DoModal() == IDOK)
  9.         {
  10.                 //获得目标文件路径
  11.                 CString strTargetPathName = dlg.GetPathName();

  12.                 SetDlgItemText(IDC_TEXT2, strTargetPathName);
  13.         }
  14. }
复制代码


添加复制按钮,实现文件复制
  1. void CDemoDlg::OnTest3()
  2. {
  3.         CString strSourcePathName = _T("");
  4.         GetDlgItemText(IDC_TEXT1, strSourcePathName);

  5.         CString strTargetPathName = _T("");
  6.         GetDlgItemText(IDC_TEXT2, strTargetPathName);

  7.         if (strSourcePathName == _T(""))
  8.         {
  9.                 AfxMessageBox(_T("请选择源文件。"));
  10.                 return;
  11.         }

  12.         if (strTargetPathName == _T(""))
  13.         {
  14.                 AfxMessageBox(_T("请选择目标文件。"));
  15.                 return;
  16.         }

  17.         //移动文件
  18.         if (::MoveFile(strSourcePathName, strTargetPathName))
  19.         {
  20.                 AfxMessageBox(_T("移动文件成功。"));
  21.         }
  22.         else
  23.         {
  24.                 AfxMessageBox(_T("移动文件失败。"));
  25.         }
  26. }
复制代码
[MFC408]1[/MFC408]
[weixinlianxi]1[/weixinlianxi]






欢迎光临 工控编程吧 (https://www.gkbc8.com/) Powered by Discuz! X3.4