最終測試版，讀取部分要再深入研究