把历史记录带进 Topf
Topf 能读取来自银行、其他 App 或 Excel 的 CSV 表格。指出日期和金额在哪一列,点按按钮之前就能看到交易进入账本后的样子。
- iPhone 或 Android 上的 Topf 1.3
- 一个 CSV 文件
- 无需联网
图中的界面依据 iOS 27 绘制。在较早的版本中,部分界面会略有不同。
-
准备文件
从银行下载对账单,或从其他 App 导出 CSV 格式的文件。表格上方银行写的抬头不必删掉:Topf 会自己找到列名所在的行。
Excel、Numbers 或 Google 表格的文件需要先另存为 CSV:Topf 不读取 .xlsx 文件。文件详情
-
打开导入
在 Topf 中打开“设置”,再打开“数据”分组里的“导入”。轻点“选择文件”,选择表格:iPhone 上在“文件” App 中,Android 上在文件选择器中。
-
指出日期和金额
需要两列:日期和金额。如果 Topf 没能从列名认出某一列,轻点“选择”,自己指定。每一列都会显示第一个值,很容易认出正确的那一列。
账户、类别、备注和货币可选:文件里有就用上。列的详情
-
看看导入后的样子
列的上方会出现前几笔交易,样子与它们在账本中的一样。如果文件里的支出没有负号、显示成了收入,在金额的菜单中选择“支出不带负号”。
-
选择账户并导入
在“账户和类别”这一步,选择交易要进入的账户,或者新建一个。顶部会显示将新增多少笔、多少笔已在账本中。
按钮上写着交易的确切数量。写入只需几秒,无需联网。
改主意了? 导入可以整体撤销。导入界面会显示“上次导入”和“撤销导入”:轻点并确认后,这次导入添加的内容会离开账本。撤销详情
文件
Topf 读取 CSV,这是一种常见的表格格式。如果银行或 App 的导出格式中有 CSV,请选择它。列之间可以用逗号、分号或制表符分隔,Topf 会自己判断。
- Excel:“文件”、“另存为”,格式选 CSV UTF-8。
- Numbers:“文件”、“导出为”、CSV。
- Google 表格:“文件”、“下载”,格式选 CSV。
一个文件最多 50,000行、20 MB。更大的表格最好拆成几个文件,比如每年一个。
如果字母变成了奇怪的符号,说明文件不是 UTF-8,而是较旧的编码。Topf 不会猜:它会展示文件里的文字在五种编码下的样子,选择显示正确的那一种即可。
对账单的表格上方常有几行关于账户的说明。Topf 会找到列名所在的行;如果找错了,打开文件名下方的菜单,选择另一行,或者说明没有标题行。
列
交易的每个字段对应文件中的一列。只有日期和金额是必需的;其他字段没有时会这样处理:
- 账户:在下一步为整个文件选择一个。
- 类别:支出记入“其他支出”,收入记入“其他收入”。
- 备注:没有备注。
- 货币:账户的货币。
- 时间:取日期中的时间,或中午12点。
只有在确定无误时,Topf 才会自己填写字段:列名与字段名完全相同,而且每个值都能识别。从 Topf 导出的文件会被完整识别,Topf 支持的任何语言都可以。手动选择的项目不会被自动改掉。
金额
文件中的金额有三种写法,金额的菜单都能处理:
- “一列,带正负号”:支出带负号,收入不带。无需任何操作。
- “支出不带负号”:适用于支出写成正数的文件。不选这一项,支出会被当成收入。
- “支出和收入分列”:适用于借方和贷方分成两列的对账单。两列都要选。
写作 1,234 的金额:如果逗号分隔千位,就是 1234;如果逗号是小数点,就是 1.234。如果一列有两种读法,Topf 会询问,并展示每种情况下读成什么。
日期
像 05/04/2026 这样的日期,在一些国家是 4月5日,在另一些国家是 5月4日。Topf 按整列判断:如果每个值都有两种读法,它会询问并展示两种读法。
没有时间的交易记在中午12点;今天的交易不会晚于当前这一分钟。未来的日期不会导入。
账户和类别
在“账户和类别”这一步,文件中的每个账户和类别各占一行,在这里决定去处:账本中的某个账户或类别、新建账户或类别,或者“不导入”。
只有答案唯一时,Topf 才会自动对应:名称和货币都相同的账户,名称和类型都相同的类别,或者这个文件上次导入时创建的项目。如果有多个都符合,这一行会要求选择,按钮也会等待。
新账户的余额从零开始,之后等于其中交易的总和:CSV 文件没有期初余额。之后可以在账户中修正。
在免费版中,导入最多创建免费版允许数量的新账户;其余的会停在“不导入”,旁边标有 Plus。类别没有数量限制。
来自 Topf 的文件
从 Topf 导出的文件会被完整识别:列会自动对应,账户和类别按 ID 找到。用它可以把交易搬到另一个用户账户,或找回曾经导出的内容。文件中只有交易:预算、定期交易和期初余额不会随之迁移;以主货币计的金额也不会读取,因为汇率会按每个日期重新取得。
在全部账户的导出中,一笔转账占两行,Topf 会把它们重新合成一笔转账。单个账户的导出只包含这个账户的一侧;如果另一个账户已经以相同货币存在于账本中,这一侧会成为转账。银行和其他 App 的文件没有这种成对的行:每一行都会成为一笔支出或收入,因为按日期和金额把行配对只能是猜测。
再次导入
把同一个文件再次导入同一个账户,不会新增任何内容。相互重叠的对账单,比如有几天重合的两个月,每笔交易只会添加一次。导入到另一个账户时,同一个文件会重新加入。未登录账户时导入过的文件也是如此:连接账户后,同一个文件可能会再次添加这些行。
Topf 根据整行内容识别一行。如果银行每次都重新编号或修改行,这些行可能会被再次添加。导入前请核对“账户和类别”顶部那一行显示将添加多少笔;如果结果不对,就撤销整个导入。
在 Topf 中删除的交易,再次导入不会恢复:导入是迁入数据,不是还原备份。
未导入的行
无法准确读取的行,Topf 不会去猜。“账户和类别”顶部那一行会统计这些行;“详情”会列出每一行及原因:
- 没有日期或金额,或者日期不存在;
- 日期在将来,或者金额为零;
- 小数位数超过该货币允许的位数;
- 货币无法识别,或与账户的货币不同;
- 备注超过 280个字符。
货币可以写成代码,比如 EUR,也可以写成符号,比如 €。$ 和 ¥ 属于多种货币,因此需要写代码。
撤销
再次打开导入,轻点“上次导入”下的“撤销导入”并确认。这次导入的交易会离开账本,导入后修改过的也一样;它创建的账户和类别如果没有别的地方在用,也会一并移除。
撤销会保存在这台设备上,直到下一次导入。其他设备上无法撤销;未登录账户时完成的导入,连接账户后就不能再撤销。撤销之后,可以用任何选择重新导入同一个文件。
如果导入中途关闭了 Topf,已写入的内容会留在账本中,同样可以撤销:导入界面会显示已写入多少、共多少。
价格和汇率
导入是免费的。每笔交易以所在账户的货币记入,换算成主货币的汇率按交易日期取得,与补记过去某天的交易时一样。