MFC和C#寫windows程序

--------------------------------------------html

C#寫Windows程序更簡單,且跟MFC相似,現切換到C#,缺點就是依賴.Net了。數組

打開一個文件選擇框網絡

https://www.cnblogs.com/lotusto/p/5767141.html工具

http://www.javashuo.com/article/p-wrntvnck-go.html編碼

文本文件的讀寫:spa

https://www.cnblogs.com/eniac12/p/4398310.html.net

FileStream和StreamWriter/Reader的區別:code

https://www.cnblogs.com/lyd2016/p/6599550.htmlorm

FileStream對象表示在磁盤或網絡路徑上指向文件的流。這個類提供了在文件中讀寫字節的方法,但常用StreamReader或 StreamWriter執行這些功能。這是由於FileStream類操做的是字節和字節數組,而Stream類操做的是字符數據。htm

 

ToString()參數中格式解析大全

https://blog.csdn.net/sinat_20559947/article/details/49028625

數字轉十六進制字符串:255.ToString("X")

 

C#,int轉成string,string轉成int

https://www.cnblogs.com/xshy3412/archive/2007/08/29/874362.html

 

--------------------------------------------------------------------

MFC:

有時候要寫個小工具給別人用,因此又把MFC用起來了,畢竟作個界面很簡單,本文打算用來長期記錄一些遇到的小問題和解決方法。

1 mfc選擇一個文件,按鈕響應中增長:

BOOL isOpen = TRUE;        //是否打開(不然爲保存)
    CString defaultDir;// = L"E:\\FileTest";    //默認打開的文件路徑
    CString fileName = L"";            //默認打開的文件名
    CString filter = L"文件 (*.txt)|*.txt||";    //文件過慮的類型

    //CFileDialog構造一個CFileDialog對象操做
    CFileDialog openFileDlg(isOpen, defaultDir, fileName, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, filter, NULL);

    //openFileDlg.GetOFN().lpstrInitialDir = L"E:\\FileTest\\test.txt";
    //DoModal顯示對話框並使用戶能夠進行選擇
    INT_PTR result = openFileDlg.DoModal();
    CString filePath;// = defaultDir + "\\test.txt";

    if(result == IDOK)
    {
        //GetPathName返回選定文件的完整路徑
        filePath = openFileDlg.GetPathName();
    }

---------------------------------------------

2 unicode編碼下字符串轉爲整數

long num = 0;

num = _ttoi(temp);

若是不改項目屬性中的字符集,默認是unicode編碼,字符相關的要加上L或者_T

--------------------------------------

3 長整型轉換成字符串:

                CString tmp;
                tmp.Format(_T("%I64X"),number);  

     tmp.Format(_T("%I64d"),number);

------------------------------------

4 打開文件

CStdioFile file;
 CFileException fileException;

if (!file.Open(filePath, CFile::typeText|CFile::modeReadWrite|CFile::shareExclusive,&fileException))

逐行讀取

file.SeekToBegin();

while (file.ReadString(cstrLine))

{

}

// 關閉文件
file.Close();

//-----------------------------------------------
// 打開文件參數項
//-----------------------------------------------
CFile::modeCreate
    --- 若是文件不存在則建立,若是文件存在則打開文件並清空文件內容
CFile::modeCreate | CFile::CFile::modeNoTruncate
    --- 若是文件不存在則建立,若是文件存在則打開文件並保留文件內容
CFile::shareDenyNone
    --- 容許其它進程對文件讀寫
CFile::shareDenyRead
    --- 不容許其它進程對文件進行讀操做
CFile::shareDenyWrite
    --- 不容許其它進程對文件進行寫操做
CFile::shareExclusive
    --- 以獨佔模式打開文件,不容許其它進程對文件進行讀寫

--------------------------------------
6 AfxMessageBox的響應:

            if(IDYES == AfxMessageBox(tips,MB_YESNOCANCEL))
            {
                exit(0);
            }

相關文章
相關標籤/搜索