C++編碼時給快取檔案命名的方法

來源:互聯網
上載者:User
我在用 C++ 實現一個快取檔案的程式,即把很多遠程傳輸過來的檔案作為臨時檔案存到本地,當然,為了避免檔案名稱的衝突,需要按照一定的規律來重新給這些檔案取名稱。如果是用 C++,可以有以下幾種簡單的方法取一個臨時的檔案名稱:
1) 用一個整數作為檔案名稱,比如說從 00001 開始一直增加到 99999,再把整數轉成字串作為檔案名稱。
這裡要注意的是,如果是多線程程式,考慮到多線程的安全性,需要在取整數的時候,加一個鎖,取完整數後,讓整數加1,再解鎖。
2) 如果是 Windows 平台,則可以考慮用系統的API,比如說 GetTempFileName 這個函數可以很好地完成任務,有興趣的可以看看 MSDN 裡有關這個函數的使用例子。
3) 如果是 Unix/Linux 主機上,則可以使用函數 tmpfile 來完成任務。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.