<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"><channel><title>MagicLen</title><link>https://magiclen.org/category/rust/feed</link><description>多元化原創文章，內容包羅萬象，有程式語言、網站應用、軟體介紹、硬體介紹、作業系統、旅行遊記、專題採訪、益智問題、文學創作，以及作者們的知識分享和作品分享。</description><language>zh-TW</language><lastBuildDate>Sun, 12 Apr 2026 20:47:59 +0000</lastBuildDate><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>8</sy:updateFrequency><sy:updateBase>1970-01-01T00:00+00:00</sy:updateBase><item><title>如何寫程式計算時間和日期的差距？</title><link>https://magiclen.org/date-differencer</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2023/01/arrow-2085192_1920-220x162.jpg" srcset="https://magiclen.org/wp-content/uploads/2023/01/arrow-2085192_1920-220x162.jpg 1x, https://magiclen.org/wp-content/uploads/2023/01/arrow-2085192_1920-440x324.jpg 2x, https://magiclen.org/wp-content/uploads/2023/01/arrow-2085192_1920-660x486.jpg 3x" alt="">
有時候我們會需要寫程式去計算兩個時間點的差距，以求得年齡、經過了多少的時間，或是否還在某個期限之內等等的資訊。日(day)與時、分、秒的差距很好算，因為它們是固定的時間(不考慮閏秒)。但年、月就不一樣了，一個月可能有28至31天，一年可能有365或366天，我們無法直接將兩個時間點(的時間戳記)相減之後去除上一個固定的單位(例如拿相差的秒數去除以2592000秒)來算出隔了多少年、月，硬是要這麼算...]]></description><category>研究分享</category><category>Rust</category><category>演算法</category><category>JavaScript</category><category>JavaScript</category><category>Rust</category><category>TypeScript</category><category>爛Code</category><category>date-differencer</category><guid>https://magiclen.org/date-differencer</guid><pubDate>Tue, 24 Jan 2023 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何寫程式判斷閏年並計算一個月有幾天？</title><link>https://magiclen.org/year-helper</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2023/01/calendar-660670_1920-220x162.jpg" srcset="https://magiclen.org/wp-content/uploads/2023/01/calendar-660670_1920-220x162.jpg 1x, https://magiclen.org/wp-content/uploads/2023/01/calendar-660670_1920-440x324.jpg 2x, https://magiclen.org/wp-content/uploads/2023/01/calendar-660670_1920-660x486.jpg 3x" alt="">
我們在小學階段都會學到平年(common year)和閏年(leap year)的判斷方式，以及這兩種年份是差在前者的二月有28天，後者則是有29天。所以平年整年一共有365天；閏年整年一共有366年。這是身為一個地球人的基本常識，但在小學的時候，老師可能只會告訴我們把西元年份的數字除以4，如果可以整除，那麼這年就是閏年，否則是平年。老師說的也不能說是錯的，只是不太完整，實際上，閏年的正確判斷方式...]]></description><category>Java</category><category>Rust</category><category>Go</category><category>JavaScript</category><category>JavaScript</category><category>Rust</category><category>TypeScript</category><category>year-helper</category><guid>https://magiclen.org/year-helper</guid><pubDate>Tue, 3 Jan 2023 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何寫程式處理中華民國的身份證字號？</title><link>https://magiclen.org/tw-id-num</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2015/10/ROC_FLAG-220x162.jpg" srcset="https://magiclen.org/wp-content/uploads/2015/10/ROC_FLAG-220x162.jpg 1x, https://magiclen.org/wp-content/uploads/2015/10/ROC_FLAG-440x324.jpg 2x, https://magiclen.org/wp-content/uploads/2015/10/ROC_FLAG-660x486.jpg 3x" alt="">
中華民國的「身份證字號」，正式名稱為「國民身分證統一編號」，是由一個代表出生地的大寫英文字母加上九個數字所組成。雖然《戶籍法》第五十七條第一項規定「年滿十四歲者，應申請初領國民身分證；未滿十四歲者，得申請發給」，但國民就算沒有國民身份證，在出生之後報戶口就會有身份證字號了。當然，台灣不是只有本地國民而已，也存在著他國國籍的人，這類人所使用的相關編號，為了能夠方便在現有的系統中使用，已於西元2021...]]></description><category>研究分享</category><category>Rust</category><category>JavaScript</category><category>JavaScript</category><category>Rust</category><category>TypeScript</category><category>tw-id-num</category><category>身份證字號</category><category>統一證號</category><category>統一編號</category><guid>https://magiclen.org/tw-id-num</guid><pubDate>Tue, 22 Nov 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>寫程式算階乘，關於階乘的三兩事</title><link>https://magiclen.org/factorial</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2022/08/factorial-220x162.png" srcset="https://magiclen.org/wp-content/uploads/2022/08/factorial-220x162.png 1x, https://magiclen.org/wp-content/uploads/2022/08/factorial-440x324.png 2x, https://magiclen.org/wp-content/uploads/2022/08/factorial-660x486.png 3x" alt="">
正整數的階乘(Factorial)是小於或等於該數的所有正整數的乘積，若正整數為N，用N!來表示N的階乘。至於0!是階乘的特例，它被定義為1。階乘的運算具有遞迴(recursion)概念，常作為學習程式邏輯的材料，而這篇文章將會說明階乘相關的程式計算。]]></description><category>研究分享</category><category>Java</category><category>Rust</category><category>數學邏輯</category><category>Go</category><category>JavaScript</category><category>Java</category><category>JavaScript</category><category>Rust</category><category>TypeScript</category><category>階乘</category><category>Go</category><guid>https://magiclen.org/factorial</guid><pubDate>Thu, 27 Oct 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何寫程式來做等值的貨幣或是物品的數量換算？</title><link>https://magiclen.org/item-exchange</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2022/06/business-18107_1920-220x162.jpg" srcset="https://magiclen.org/wp-content/uploads/2022/06/business-18107_1920-220x162.jpg 1x, https://magiclen.org/wp-content/uploads/2022/06/business-18107_1920-440x324.jpg 2x, https://magiclen.org/wp-content/uploads/2022/06/business-18107_1920-660x486.jpg 3x" alt="">
不同國家有不同的貨幣流通，不同的貨幣也會有不同的價值。其實也不只貨幣，任何物品，無論實體的或是虛擬的都一樣，只要價值可以被衡量，就可以被等值換算。講到錢就傷感情，以蘋果和橘子來舉例好了，假設2顆蘋果等值於3粒橘子，那麼8顆蘋果就會等值於12粒橘子。]]></description><category>研究分享</category><category>Java</category><category>Rust</category><category>數學邏輯</category><category>JavaScript</category><category>Java</category><category>JavaScript</category><category>Rust</category><category>TypeScript</category><guid>https://magiclen.org/item-exchange</guid><pubDate>Thu, 28 Jul 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何判斷兩個浮點數是否相等？是否能整除？相除後餘數是多少？</title><link>https://magiclen.org/float-precision</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2022/06/geometry-1044090_1920-220x162.jpg" srcset="https://magiclen.org/wp-content/uploads/2022/06/geometry-1044090_1920-220x162.jpg 1x, https://magiclen.org/wp-content/uploads/2022/06/geometry-1044090_1920-440x324.jpg 2x, https://magiclen.org/wp-content/uploads/2022/06/geometry-1044090_1920-660x486.jpg 3x" alt="">
使用電腦去進行浮點數運算的時候，在某些條件下會出現顯而易見的誤差，而這樣的誤差，就會導致與浮點數有關的計算或是邏輯判斷出現問題。]]></description><category>研究分享</category><category>Java</category><category>Rust</category><category>演算法</category><category>JavaScript</category><category>Java</category><category>JavaScript</category><category>Rust</category><category>TypeScript</category><guid>https://magiclen.org/float-precision</guid><pubDate>Thu, 21 Jul 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何用Rust程式語言計算字詞數量？</title><link>https://magiclen.org/words-count</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png" srcset="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png 1x, https://magiclen.org/wp-content/uploads/2018/04/rust-440x324.png 2x, https://magiclen.org/wp-content/uploads/2018/04/rust-660x486.png 3x" alt="">
Rust的字串是使用UTF-8編碼的，如果直接使用「str」或是「String」的「len」方法，會得到UTF-8資料的位元組的數量，而非字元數。因為在UTF-8編碼下，一個字元不一定是一個位元組，例如「4」會被編碼成「[52]」；「ß」會被編碼成「[195, 159]」；「中」會被編碼成「[228, 184, 173]」；「𩸽」(ㄌㄨㄥˇ)會被編碼成「[240, 169, 184, 189]」。...]]></description><category>Rust</category><category>Rust</category><category>words-count</category><guid>https://magiclen.org/words-count</guid><pubDate>Thu, 26 May 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何使用Rust程式語言一邊讀取UTF-8資料一邊進行驗證？</title><link>https://magiclen.org/utf8-builder</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png" srcset="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png 1x, https://magiclen.org/wp-content/uploads/2018/04/rust-440x324.png 2x, https://magiclen.org/wp-content/uploads/2018/04/rust-660x486.png 3x" alt="">
在進行軟體開發的時候，我們可能會需要讓程式從外部讀取UTF-8資料再轉成程式語言內建的字串型別。其實UTF-8資料不必在完全讀取完後才去驗證其正確性，一邊讀取一邊驗證才是比較有效率的作法。]]></description><category>Rust</category><category>Rust</category><category>utf8-builder</category><guid>https://magiclen.org/utf8-builder</guid><pubDate>Thu, 19 May 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何使用Rust程式語言將字串安全地寫入網址中？</title><link>https://magiclen.org/url-escape</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png" srcset="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png 1x, https://magiclen.org/wp-content/uploads/2018/04/rust-440x324.png 2x, https://magiclen.org/wp-content/uploads/2018/04/rust-660x486.png 3x" alt="">
在進行軟體開發的時候，可能會需要將使用者輸入的資料插入至網址(URL)中，但URL能夠使用的字元是有限制的，錯誤格式的URL有機會使得HTTP客戶端在訪問URL資源時出現問題，也可能會導致透過URL來傳遞的參數有誤。為了讓URL可以傳遞任意字元的資料，對於不合法的字元，我們需要將其進行編碼。例如在網址的查詢(Query)部份(「?」之後的部份)，如果要在查詢的參數值中使用「&amp;」字元，就不能直接使用...]]></description><category>Rust</category><category>Rust</category><category>url-escape</category><guid>https://magiclen.org/url-escape</guid><pubDate>Tue, 17 May 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item><item><title>如何在Rust程式專案中安全地使用外部或是專案目錄下的檔案？</title><link>https://magiclen.org/manifest-dir-macros</link><description><![CDATA[    <img src="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png" srcset="https://magiclen.org/wp-content/uploads/2018/04/rust-220x162.png 1x, https://magiclen.org/wp-content/uploads/2018/04/rust-440x324.png 2x, https://magiclen.org/wp-content/uploads/2018/04/rust-660x486.png 3x" alt="">
在開發程式的時候難免會需要在程式中引入外部的檔案，為了方便管理我們也常會將這些檔案放置在程式專案目錄下。然而在程式碼撰寫程式路徑於執行階段讀取檔案時，檔案路徑的正確性需要等到執行階段的時候才會知道，就算寫錯了而找不到這個檔案，程式專案也是能成功通過編譯，這就會使得程式在執行階段有出現問題的可能。]]></description><category>Rust</category><category>Rust</category><category>manifest-dir-macros</category><guid>https://magiclen.org/manifest-dir-macros</guid><pubDate>Thu, 12 May 2022 12:00:00 +0800</pubDate><dc:creator>Magic Len</dc:creator></item></channel></rss>