Как бы я это проверил? Это то, на чем я застрял.
Например, используя String.split(",")
, что даст вам String[]
, на котором вы можете проверить, если String[].length == 7
.
edit: просто чтобы убедиться, что это не полное решение вашей проблемы, а хорошая отправная точка. Я полностью согласен со всеми другими комментариями / ответами, выбрасывать исключение излишне.
edit 2: Предположим, что пользователь дал следующую строку в качестве ввода, и вы хотите проверить ее перед записью в файл:
String str = "a1,b2,c3,d4,e5,f6";
как видите, эта строка имеет шесть элементов и пять запятых, другими словами, она должна предупреждать пользователя. Очень простой способ проверить это будет:
if (str.split(",").length != 7) // checks if the string is comma delimited and has seven pieces of information
warnUser(); // whatever you want to do to warn user
else
writeToFile(str);
обратите внимание, что это просто показывает принцип, в вашем случае вы можете (и, вероятно, захотите) проверить другие вещи, такие как форматирование, или что у вас есть буквенно-цифровой текст, без подчеркивания или что-то еще. Если у вас есть много условий, которые вы хотите проверить, вы можете написать метод validateInput(str)
, который может быть серией проверок условий и возвращает true
, только если все условия проверены.