使用方法
- 「数值」默认填 2000,允许 0 到 100000000,支持小数;「换算方向」默认从千焦换到千卡,「卡」的定义默认热化学卡。改任意一项立刻重算,光标停在数值框里按回车同样触发一次。
- 「换算方向」有两档:千焦 → 千卡 与 千卡 → 千焦。食品包装上印的是千焦、日常说的是千卡,两个方向都会用到,「反转方向」按钮可以随时调头。
- 「卡」的定义有三档:热化学卡(1 cal = 4.184 J)、国际蒸汽表卡(1 cal = 4.1868 J)、15 摄氏度卡(1 cal = 4.1855 J)。营养标签与运动手环默认热化学卡,工程与蒸汽表文献里常见国际蒸汽表卡。
- 「小数位」默认 3,范围 0 到 10。它只影响显示,把结果四舍五入到指定位数;内部换算全程用双精度浮点数,不因为显示位数少而降精度。
- 「批量换算」默认已经写好五行示例,每行一条「数值 + 空格 + kJ 或 kcal」。按 Ctrl+Enter(Mac 上 Cmd+Enter)一次算完;万一被清空,点换算时会自动填回这五行。
- 结果区给出「原值 = 结果」这一行,下面跟着同一数值在三种「卡」口径下的结果、三种口径的极差,以及两个反向系数,用来核对有没有看反方向。
- 清单下面是一张 16 行的倍率表,把当前数值乘以 0.25 到 8192 逐个换算,默认显示 6 行,点「加载更多」展开全部,点「导出 CSV」存成带字节序标记的表格文件。
- 数值为负、超过上限、不是数字,或批量行写成「2000 千焦」这类识别不了的形式,都会给出针对该条的具体提示,不会拿上一次的结果冒充本次输出。
这个千焦转千卡换算工具能解决什么问题
食品包装的营养成分表印的是千焦,健身与饮食管理的口径说的是千卡,两边说的同一件事用两个单位。更麻烦的是「卡」本身不唯一:热化学卡 1 cal = 4.184 J、国际蒸汽表卡 1 cal = 4.1868 J、15 摄氏度卡 1 cal = 4.1855 J,三者相差约 0.067%。本页把三种口径同时摆出来,让你知道差多少、该用哪个。
第二类是标签核对。中国预包装食品的营养成分表按千焦标注,而日常推荐量常说千卡;8400 千焦每天约合 2007.6 千卡,这是中国居民膳食营养素参考摄入量里常用的成年男性参考值。把标签上的千焦换成千卡,才能和这个参考值放在一起比。
第三类是宏量营养素折算。1 克碳水 4.0 千卡 = 16.7360 千焦,蛋白质同样是 4.0 千卡,脂肪 9.0 千卡 = 37.6560 千焦,酒精 7.0 千卡 = 29.2880 千焦。配料表里碳水、脂肪、蛋白质的克数乘以各自的能量密度再相加,应当与标签标的总能量接近,对不上就是标签或算法有问题。
第四类是「大卡」与「卡」的量级混乱。营养学说的卡路里、大卡指的是千卡,1 千卡 = 1000 卡;口语里说「这个苹果 80 卡」实际是 80 千卡,差 1000 倍。本页的输入单位是千卡,不会把 80 千卡算成 80 卡。
这个工具在本站也叫「千焦转千卡」,名字里的千卡就是大卡,也就是营养标签上说的卡路里。
计算原理与变量说明
本页的换算只有一步除法或一步乘法,关键在于用哪个焦耳数去定义「卡」。三种定义都是精确定义值,不是测量值:热化学卡 4.184 J、国际蒸汽表卡 4.1868 J、15 摄氏度卡 4.1855 J。记作 CAL[口径],单位是焦每卡。
第一步,从千焦换到千卡:千卡 = 千焦 × 1000 ÷ (CAL[口径] × 1000)。分子分母的 1000 同时约掉,等价于 千卡 = 千焦 ÷ CAL[口径]。输入 2000 千焦、口径热化学卡,得 2000 ÷ 4.184 = 478.011 千卡。
第二步,千卡转千焦:千焦 = 千卡 × CAL[口径]。输入 500 千卡、口径热化学卡,得 500 × 4.184 = 2092 千焦。两个方向互为逆运算,来回换算可以验算。
变量只有三个:数值 x、换算方向、「卡」的定义。舍入只发生在最后显示的那一步,按「小数位」做四舍五入;反向系数固定显示 10 位,末尾的零会被去掉。
系数 0.2390057361 是算出来的,不是经验值。它就是 1 ÷ 4.184 的完整小数展开,所以 1 千焦 = 0.2390057361 千卡(热化学口径)。看到别的系数(比如 0.2388 或 0.24)说明对方换了定义或做了截断。
为什么三种卡会给出三个数。同样是 2000 千焦,热化学口径 478.011 千卡、国际蒸汽表口径 477.692 千卡、15 摄氏度口径 477.840 千卡,极差 0.3197 千卡。原因是分母不同:4.184 最小,除出来的商最大;4.1868 最大,除出来的商最小。日总量越小这个差异越不起眼,累积到整份膳食或整周记录才会显出来。
热化学卡为什么是默认值。食品营养标签与运动手环的能量口径基本都落在热化学卡上,它不是更「正确」,而是行业约定。工程热力学与蒸汽表文献常用国际蒸汽表卡,读老文献时要切过去。
能量密度用于交叉验证。1 克碳水 4.0 千卡 = 16.7360 千焦,蛋白质同为 4.0 千卡,脂肪 9.0 千卡 = 37.6560 千焦,酒精 7.0 千卡 = 29.2880 千焦。这些数乘上克数相加,应当逼近标签上的总能量;偏差过大时先怀疑单位读错。
完整示例(数值仅作演示)
默认示例是 2000 千焦换成千卡(热化学卡)。千卡 = 2000 ÷ 4.184 = 478.011 千卡。同一个 2000 千焦在国际蒸汽表口径下是 477.692 千卡,在 15 摄氏度口径下是 477.840 千卡,三者极差 0.3197 千卡。
反向核对:1 千焦 = 0.2390057361 千卡,1 千卡 = 4.184 千焦。把 478.011 千卡乘回 4.184,得 1999.998024 千焦,与原值在显示精度内一致,说明方向没搞反。
把数值改成 8400:得到 2007.648 千卡,这正是每日 8400 千焦参考摄入量对应的千卡值,四舍五入到一位小数是 2007.6 千卡。
把方向改成千卡转千焦、数值改成 500:得到 2092 千焦。换成国际蒸汽表口径是 2093.4 千焦(500 × 4.1868),换成 15 摄氏度口径是 2092.75 千焦(500 × 4.1855),方向与口径的差别在这里都能看到。
批量框默认五行:2000 千焦得 478.011 千卡,8400 千焦得 2007.648 千卡,500 千卡得 2092 千焦,2500 千焦得 597.514 千卡,7500 千焦得 1792.543 千卡。中间夹着一条反向的 500 千卡,用来确认批量框同时支持两个方向。
千焦与千卡对照表
下表是热化学卡口径(1 kcal = 4.184 kJ),同时列出另外两种口径的结果,方便看出差异有多大。
| kJ | kcal(th) | kcal(IT) | kcal(15) | kJ | kcal(th) | kcal(IT) | kcal(15) |
|---|---|---|---|---|---|---|---|
| 100 | 23.901 | 23.885 | 23.892 | 1500 | 358.509 | 358.269 | 358.380 |
| 250 | 59.751 | 59.711 | 59.730 | 2000 | 478.011 | 477.692 | 477.840 |
| 500 | 119.503 | 119.423 | 119.460 | 2500 | 597.514 | 597.115 | 597.300 |
| 750 | 179.254 | 179.134 | 179.190 | 3000 | 717.017 | 716.538 | 716.760 |
| 1000 | 239.006 | 238.846 | 238.920 | 4000 | 956.023 | 955.384 | 955.680 |
| 1500 | 358.509 | 358.269 | 358.380 | 5000 | 1195.029 | 1194.229 | 1194.600 |
下面这张表把常见的每日能量参考摄入量从千焦换成千卡,口径同样是热化学卡。
| 每日千焦 | 每日千卡 | 每日千焦 | 每日千卡 |
|---|---|---|---|
| 6700 kJ | 1601.3 | 10000 kJ | 2390.1 |
| 7500 kJ | 1792.5 | 11000 kJ | 2629.1 |
| 8400 kJ | 2007.6 | 12500 kJ | 2987.6 |
| 9200 kJ | 2198.9 | 14600 kJ | 3489.5 |
读第一张表看三种口径的间距:kJ 越大,th 与 IT 之间的绝对差越大,但相对差恒定为 0.067%。读第二张表注意它是成人每日参考,不是推荐你照着吃;反过来核对食品标签时,把标签上的千焦先换成千卡再和它比。
结果边界、舍入与适用说明
- 数值框为空时提示「数值不能为空,请填 0 到 100000000 之间的数字」,不会拿上一次的结果冒充本次输出。
- 数值里带了单位符号或千分位逗号时提示该串不是有效数字,请只填数字;千分位逗号要去掉再填。
- 数值为负数时提示能量没有负值,请填 0 或更大的数,不返回负数也不取绝对值。
- 数值超过 100000000 时提示超出上限,请改小或换成千焦之上的单位再填。
- 批量行缺少单位、数值不是数字、或单位不是 kJ 与 kcal 之一时,分别给出行号与具体原因,例如「批量第 3 行「2000 千焦」无法解析(单位「千焦」不是 kJ 或 kcal)」。
- 小数位只影响结果区与清单,按四舍五入取到指定位数,末尾的零会被去掉;反向系数固定 10 位,不受小数位影响。
- 结果取绝对值小于 1e-9 或大于等于 1e16 时改用科学计数法显示,避免一长串零把表格撑破。
- 页面不联网、不写本地存储,数值与批量内容只用于本次计算。
常见问题
「卡」不是唯一定义的吗?为什么会有三种结果?
不是唯一的。热化学卡 1 cal = 4.184 J、国际蒸汽表卡 1 cal = 4.1868 J、15 摄氏度卡 1 cal = 4.1855 J,三者相差约 0.067%。2000 千焦在这三种口径下分别是 478.011、477.692、477.840 千卡,极差 0.3197 千卡。食品营养标签与运动手环默认热化学卡。
营养学说的「大卡」「卡路里」和这里的千卡是一回事吗?
是一回事。1 千卡 = 1000 卡,营养学里说的卡路里、大卡都指千卡。口语里说「这杯奶茶 300 卡」实际是 300 千卡,比物理意义上的卡大 1000 倍。本页的输入单位是千卡,不会把 80 千卡当成 80 卡来算。
0.239 这个换算系数是怎么来的?
它是 1 ÷ 4.184 的展开,完整值是 0.2390057361,不是经验值也不是近似规定。换了卡的定义,系数也要换:国际蒸汽表口径是 1 ÷ 4.1868,15 摄氏度口径是 1 ÷ 4.1855。
8400 千焦一天到底是多少千卡?这个数从哪来?
8400 千焦在热化学口径下是 2007.6 千卡(精确值 2007.648)。8400 千焦每天是中国居民膳食营养素参考摄入量里常用的成年男性参考值,不同性别、年龄与体力活动水平的档位不同,核对食品标签时先换成千卡再比。
为什么我用营养素克数加出来的能量和标签对不上?
先查单位再看舍入。1 克碳水 4.0 千卡 = 16.7360 千焦,蛋白质同样 4.0 千卡,脂肪 9.0 千卡 = 37.6560 千焦,酒精 7.0 千卡 = 29.2880 千焦;三项乘克数相加应当逼近标签总能量。差得远通常是把千焦当千卡读了,或标签按能量系数做了允许的取整。
批量框里写「2000 千焦」为什么报错?
单位只认 kJ 与 kcal 两种写法,大小写敏感。「2000 千焦」里的「千焦」不是单位关键字,无法判断你要换算到哪一边,所以直接报行号与原因,不猜。写成「2000 kJ」即可。
这个工具免费吗?
免费,无需注册即可使用。
输入的数据安全吗?
安全。计算在当前浏览器本地完成,不会上传输入内容。