加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 如何在iOS中获取ISBN条形码

发布时间:2020-12-14 17:41:50 所属栏目:百科 来源:网络整理
导读:我正在做一个关于ISBN条码扫描的项目.我尝试了很多扫描应用程序,但扫描完条码后: 该应用程序只给我条码9780749423490. 但我需要获得的是ISBN代码0749423498,因为它在我的库的数据库中.有什么办法可以搞定吗? 谁能解释这两个代码之间的区别?为什么条形码编
我正在做一个关于ISBN条码扫描的项目.我尝试了很多扫描应用程序,但扫描完条码后:

该应用程序只给我条码9780749423490.
但我需要获得的是ISBN代码0749423498,因为它在我的库的数据库中.有什么办法可以搞定吗?

谁能解释这两个代码之间的区别?为什么条形码编号和ISBN条形码编号不同?对于某些书籍是否相同而对某些书籍则不同?谢谢!

解决方法

看起来混淆是“ISBN 10”和“ISBN 13”标准之间的区别.

ISBN Agency网站FAQ说:

"Does the ISBN-13 have any meaning imbedded in the numbers? 
The five parts of an ISBN are as follows:

 1. The current ISBN-13 will be prefixed by "978"
 2. Group or country identifier which identifies a national or geographic grouping of publishers
 3. Publisher identifier which identifies a particular publisher within a group
 4. Title identifier which identifies a particular title or edition of a title
 5. Check digit is the single digit at the end of the ISBN which validates the ISBN"

所以978显然只是填充物.在那之后,接下来的9个数字在两个数字中显然是相同的.两个数字中的最后一位数字是一个校验位,其在ISBN 10和ISBN 13中有所不同.有关详细信息,请参阅this Wikipedia article,但这两个公式为:

对于ISBN 10(最高的一个),所有数字的总和乘以多项式10-9-8-7-6-5-4-3-2-1 mod 11应为0:

0*10 + 7 *9 + 4*8 + 9*7 + 4*6 + 2*5 + 3*4 + 4*3 + 9*2 + 8*1 % 11 == 0

对于ISBN 13(最下面的一个),奇数位的总和* 1加上偶数位* 3的总和应该为0.这包括前导978.(这类似于UPC代码“用户… “提到但有点不同,如维基百科文章所述):

9*1 + 7*3 + 8*1 + 0*3 + 7*1 + 4*3 + 9*1 + 4*3 + 2*1 + 3*3 + 4*1 + 9*3 + 0*1 % 10 == 0

因此,您可以从ISBN 13(底部)代码中获取ISBN 10代码(顶部),如下所示:

isbnBaseCode = <9780749423490 from the 4th to 12th characters>

isbn10CheckDigit = 11 - (isbnBaseCode[0]*10 + isbnBaseCode[1]*9 + ... + isbnBaseCode[8]*2) % 11

isbnCode10 = isbnBaseCode + isbn10CheckDigit

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读