[MacOS]SavePanel/OpenPanel

更新於 發佈於 閱讀時間約 2 分鐘

儲存檔案:

let savePanel = NSSavePanel()
savePanel.canCreateDirectories = true
savePanel.showsTagField = false
savePanel.nameFieldStringValue = "localFile.txt"
savePanel.level = NSWindow.Level(rawValue: Int(CGWindowLevelForKey(.modalPanelWindow)))
savePanel.begin { (result) in
if result.rawValue == NSApplication.ModalResponse.OK.rawValue {
do{
try self.writeTextView.string.write(to: savePanel.url!, atomically: true, encoding: .utf8)
}
catch{
NSLog("save Error")
}
}
}


開啟檔案:

let readPanel = NSOpenPanel()
readPanel.title = "Choose a .txt file";
readPanel.showsResizeIndicator = true;
readPanel.showsHiddenFiles = false;
readPanel.canChooseDirectories = true;
readPanel.canCreateDirectories = true;
readPanel.allowsMultipleSelection = false;
readPanel.allowedFileTypes = ["txt"];
if (readPanel.runModal() == NSApplication.ModalResponse.OK) {
//reading

do {
readTextView.string = try String(contentsOf: readPanel.url!, encoding: .utf8)
}
catch {
NSLog("read Error")
}
}




avatar-img
8會員
123內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
用來操作 Core Data 的常數 private let coreDataContext = (NSApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext 取的資料數量: func get
func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { NSApplication.shared.terminate(self) return
字串交換: let str = "被誰喜歡,又喜歡誰呢?" // 交換 print(str.replacingOccurrences(of: ",又", with: "?")) //被誰喜歡?喜歡誰呢? 字串去首尾: let str = "被誰喜歡,又喜歡誰呢?" // 去首尾 print
int to data: //int to data var num = -12300 let data = Data.init(bytes: &num, count: MemoryLayout.size(ofValue: num)) // bytes : 8 elements //
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 向右位移: let shiftRightBin1Result = bin1>>1 print(String(shiftRightBin1R
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 and運算 let andResult = bin1 & bin2 print(String(andResult,radix: 2))//
用來操作 Core Data 的常數 private let coreDataContext = (NSApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext 取的資料數量: func get
func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { NSApplication.shared.terminate(self) return
字串交換: let str = "被誰喜歡,又喜歡誰呢?" // 交換 print(str.replacingOccurrences(of: ",又", with: "?")) //被誰喜歡?喜歡誰呢? 字串去首尾: let str = "被誰喜歡,又喜歡誰呢?" // 去首尾 print
int to data: //int to data var num = -12300 let data = Data.init(bytes: &num, count: MemoryLayout.size(ofValue: num)) // bytes : 8 elements //
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 向右位移: let shiftRightBin1Result = bin1>>1 print(String(shiftRightBin1R
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 and運算 let andResult = bin1 & bin2 print(String(andResult,radix: 2))//
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本文介紹 macOS 環境開發 iOS 應用程式。先列硬體規格與軟體需求,包括處理器、記憶體等要求和作業系統、開發工具版本要求。然後詳述開發環境設置步驟,像安裝 Flutter SDK 等。也介紹配置 iOS 模擬器和實體設備的方法。最後提及如何檢查開發環境,以及開始開發 iOS 應用的諸多建議。
底下為操作流程: 打開「磁碟工具程式」 點選「檔案」 點選「新增映像檔」 點選「來自檔案夾的映像檔」 選擇要製作成「dmg」的物件 選擇要存放「dmg」的資料夾與設定(檔名、加密與映像檔格式)
Thumbnail
在前公司會用這套工具為 Windows 電腦清理暫存檢查問題,但微軟官方一直不信任這類程式,也曾把 CCleaner 列為潛在的垃圾應用程式(PUA),最近發現它的 macOS 版本也像惡意程式一樣,裝了之後竟一直潛伏在背景且無法用正常方式刪除,建議不要安裝此軟體,移除方式請參考這篇: https
Thumbnail
以往對於macOS系統都不會追求要更新到最新版本,儘管許多人推的macOS Sonoma免費版釋出後,也遲遲沒有升級XD。 直到知道升級後就能透過App Store下載copilot使用GPT-4就衝動更新了!(有聽說部分人的網頁版就可以直接選擇GPT-4?)
Thumbnail
目標 使用自備的 NAS 或者有硬碟空間的同網域電腦分享空間,做為蘋果電腦的 TimeMachine 備份儲存用 以下以 NAS 舉例,一般 Windows 電腦用網路芳鄰分享也行
Thumbnail
雖然網上有不少 Cloud 的 圖像生成 AI service,但是如果要大量/長期免費地使用,在本地安裝及依靠本機運算能力的 Stable Diffusion 是一個不錯的選擇。
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本文介紹 macOS 環境開發 iOS 應用程式。先列硬體規格與軟體需求,包括處理器、記憶體等要求和作業系統、開發工具版本要求。然後詳述開發環境設置步驟,像安裝 Flutter SDK 等。也介紹配置 iOS 模擬器和實體設備的方法。最後提及如何檢查開發環境,以及開始開發 iOS 應用的諸多建議。
底下為操作流程: 打開「磁碟工具程式」 點選「檔案」 點選「新增映像檔」 點選「來自檔案夾的映像檔」 選擇要製作成「dmg」的物件 選擇要存放「dmg」的資料夾與設定(檔名、加密與映像檔格式)
Thumbnail
在前公司會用這套工具為 Windows 電腦清理暫存檢查問題,但微軟官方一直不信任這類程式,也曾把 CCleaner 列為潛在的垃圾應用程式(PUA),最近發現它的 macOS 版本也像惡意程式一樣,裝了之後竟一直潛伏在背景且無法用正常方式刪除,建議不要安裝此軟體,移除方式請參考這篇: https
Thumbnail
以往對於macOS系統都不會追求要更新到最新版本,儘管許多人推的macOS Sonoma免費版釋出後,也遲遲沒有升級XD。 直到知道升級後就能透過App Store下載copilot使用GPT-4就衝動更新了!(有聽說部分人的網頁版就可以直接選擇GPT-4?)
Thumbnail
目標 使用自備的 NAS 或者有硬碟空間的同網域電腦分享空間,做為蘋果電腦的 TimeMachine 備份儲存用 以下以 NAS 舉例,一般 Windows 電腦用網路芳鄰分享也行
Thumbnail
雖然網上有不少 Cloud 的 圖像生成 AI service,但是如果要大量/長期免費地使用,在本地安裝及依靠本機運算能力的 Stable Diffusion 是一個不錯的選擇。