很多人以为Swift只适合开发iOS应用,其实它也能在日常办公中派上用场。比如你经常要处理大量文本文件、重命名一堆报表,或者从日志里提取数据,写个小脚本就能省下半小时手动操作。
\n\n用Swift处理CSV数据
\n假设你每周都要从销售系统导出CSV文件,然后手动统计每个区域的总销售额。与其一次次打开Excel筛选,不如写个Swift脚本自动计算。
\n\nimport Foundation\n\nfunc calculateSales(byRegion filename: String) -> [String: Double] {\n guard let content = try? String(contentsOfFile: filename, encoding: .utf8) else {\n return [:]\n }\n \n var salesData: [String: Double] = [:]\n let lines = content.components(separatedBy: .newlines)\n \n for line in lines.dropFirst() { // 跳过标题行\n let parts = line.components(separatedBy: \",\")\n if parts.count >= 3,\n let amount = Double(parts[2]) {\n let region = parts[1]\n salesData[region, default: 0.0] += amount\n }\n }\n \n return salesData\n}\n\nlet result = calculateSales(byRegion: \"/Users/you/Desktop/sales.csv\")\nfor (region, total) in result {\n print(\"\\(region): \\(total)\")\n}\n\n把这个脚本保存成sales.swift,终端里运行xcrun swift sales.swift,几秒就出结果。以后导出文件后直接拖进脚本目录,双击运行就行。
批量重命名文件
\n财务同事常把发票扫描件命名为“IMG_001.jpg”、“IMG_002.jpg”,看着头疼。用Swift可以按规则批量改名,比如加上日期和类别。
\n\nimport Foundation\n\nlet fm = FileManager.default\nlet dir = \"/Users/you/Desktop/invoices/\"\nlet files = try? fm.contentsOfDirectory(atPath: dir)\n\nfor (index, file) in (files ?? []).enumerated() {\n let oldPath = dir + file\n let newPath = dir + \"invoice_202410_\\(String(format: \"%03d\", index + 1)).jpg\"\n try? fm.moveItem(atPath: oldPath, toPath: newPath)\n}\n\n跑完脚本,所有文件变成“invoice_202410_001.jpg”这种格式,归档查找方便多了。公司用Mac的同事都能试试,不需要装第三方工具。
\n\n从日志提取关键信息
\n技术支持每天要看服务器日志,找特定错误码。与其肉眼扫屏,不如让Swift帮你过滤。
\n\nimport Foundation\n\nfunc findErrors(in logFile: String, keyword: String) {\n guard let content = try? String(contentsOfFile: logFile, encoding: .utf8) else { return }\n \n let lines = content.components(separatedBy: .newlines)\n for line in lines {\n if line.contains(keyword) {\n print(line)\n }\n }\n}\n\nfindErrors(in: \"/var/log/app.log\", keyword: \"ERROR 500\")\n\n这种小脚本写一次能用几个月,遇到新需求改两行代码就行。Swift语法清晰,就算没学过的人看几遍也懂意思。
\n\n别觉得编程离办公很远。会点Swift,就像多了一个能熬夜还不抱怨的助手。处理文档、整理数据、自动提醒,都能安排上。Mac自带Swift环境,打开终端就能开始写。”,"seo_title":"Swift代码示例:提升办公效率的小技巧","seo_description":"通过几个实用的Swift代码示例,展示如何用Swift脚本自动化处理办公中的重复任务,如分析CSV、批量重命名文件和解析日志。","keywords":"Swift代码示例,办公自动化,Swift脚本,Mac办公技巧,批量处理文件"}