我正在尝试为旧档案创建分类系统。但我似乎无法弄清楚如何打破47位数字(09281746381927384678172917289371628937821936782
)
分成不同的int
,因为我希望数字的各个部分表示行,年,部门等内容,然后将其打印到条形码上。所以我想把那个长整数分成
long one = 198610240984874358;
int year = one(0 + 1 + 2 + 3);
int month = one(4 + 5);
或类似的东西。我似乎无法在线找到答案。
答案 0 :(得分:2)
如评论中所述,最好的做法是将其保留为String
,并使用substring(int beginIndex, int endIndex)
来分隔数字。试试
long one = 198610240984874358l;
String number = one + "";
int year = Integer.parseInt(number.substring(0, 4));
int month = Integer.parseInt(number.substring(4, 6));
阅读Substring in Java,以了解更多信息。