isbn(国际标准书号)的校验(ISBN (ISBN) check).docVIP

isbn(国际标准书号)的校验(ISBN (ISBN) check).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
isbn(国际标准书号)的校验(ISBN (ISBN) check)

isbn(国际标准书号)的校验(ISBN (ISBN) check) 公共课考试{ public static void main(String [] args){ 系统的输入(“9787302155638”+书号。checkIsbn(“9787302155638”)); 系统的输入(“7564105607”+书号。checkIsbn(“7564105607”)); 系统的输入(“730213880x”+书号。checkIsbn(“730213880x”)); 系统的输入(“7302138800”+书号。checkIsbn(“7302138800”)); 系统的输入(“9790000000000”+书号。checkIsbn(“9790000000000”)); 尝试{ 系统。出来。println(书号。checkIsbn(“9770000000000”)); } catch(异常){ 系统的输入(“9770000000000”+大肠getmessage()); } 尝试{ 系统。出来。println(书号。checkIsbn(“123456545”)); } catch(异常){ 系统的输入(“123456545”+大肠getmessage()); } } } 公共最终类ISBN { / * * *根据输入的ISBN书号号,检验的有效性。依据GB/T 5795-2006和ISO 2108:2005 ISBN * 10位标准和13位标准实现(13位标准自2007年1月1日开始实行,在此之前采用10位标准)。 * * @param字符串需要进行校验的ISBN书号:字符串 * @返回true:所输入的ISBN校验正确;br /假:所输入的ISBN校验错误 * / 公共静态布尔checkIsbn(字符串ISBN){ int数= 0; 国际checkbitint = 0; / /将ISBN数据全取大写字母 / = touppercase() ISBN书号; char [] CS =书号。tochararray(); 开关(书号。length()){ 案例10: / / **************************************************************** / /当ISBN为10位时,进行的校验,用于2007年1月1日前的出版物 / /数据格式:从左至右前9位为ISBN数据,第10位为校验位 / /校验方法: / /(1)9 10 2从左至右将前位数据从开始至进行编号,作为位权 / /(2)将9位数据与各位位权进行加权,并求其9位和(称为加权和,记作m) / /(3)第10位校验位计算方法,校验位为C: / / M + C≡0(mod 11) / / C为10时,记作“X” / / **************************************************************** 9 /取出前位数字进行加权和计算 为(int i = 0;i 9;i++){ 9 /若前位数据中有非数字字符,则抛出异常 如果(CS [我] 0 | | CS [我] 9){ 把新的isbnformatexception(“书号”+书号+ “第”+(i + 1)+“位中出现非法字符”+ CS [我]); } int c = cs [him] - 0; / / 求加权和 count + = c * (10s); } / / 取出校验位数据0~9和x符合校验字符要求 if (cs [9] = 0 cs [9] = 9) { checkbitint = cs [9] - 0; } else if (cs [9] = = x | | cs [9] = = x) { / / 校验位中的 x 表示数据 10 checkbitint = 10; } else { / / 非0~9或x时抛出异常 throw new isbnformatexception (isbn isbn + + 第 10 位中出现非法字符 + cs [9]); } / / 进行校验 if ((count + checkbitint)% 11 = = 0) { return true; / / 校验成功 } else { return false; / / 校验失败 } case 1: / / * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * / / 当isbn为13位时, 进行的校验, 用于2007年1月1日后的出版物

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档