c convert string int using parse
Як відкрити виконуваний файл
Підручник з перетворення рядка на Int у C #. Ви вивчите кілька методів перетворення, такі як Parse, TryParse & Convert, виходячи з вимог:
Більшість з нас траплялися в такій ситуації час від часу, коли нам потрібно перетворити рядок у цілочисельний тип даних.
Наприклад, скажімо, я отримую рядок “99” від джерела даних (з бази даних, введення користувача тощо), але нам він потрібен як ціле число для виконання деяких обчислень, тут нам спочатку потрібно буде перетворити його в ціле число перед початком деякі арифметичні дії.
Для цього існує кілька способів, і ми розглянемо декілька широко використовуваних методів.
=> Ознайомтесь із повною серією навчальних програм C # тут
Що ви дізнаєтесь:
- Метод Int.Parse
- Метод перетворення System.Convert
- int.TryParse метод
- Перетворення нечислового рядка в ціле число
- Висновок
- Рекомендована література
Метод Int.Parse
Метод Int.Parse працює чудесно, якщо ви впевнені, що перетворення ніколи не призведе до помилки. Це один з найпростіших і найпростіших способів перетворення рядка в ціле число. Це може призвести до помилки, якщо перетворення не буде успішним.
Цей метод в основному використовується, коли у вас ціле число у вигляді рядка. Наприклад, Ви отримуєте рядок із цифровим введенням, наприклад “99”. Спробуємо просту програму для перетворення цього рядка у ціле число.
Програма
програма громадського класу
{ public static void Main() { String str = '99'; int number = int.Parse(str); Console.WriteLine(number); } }
Вихідні дані
Результат роботи вищезазначеної програми:
99
Пояснення
Програма поверне числове значення рядка.
Хитра частина використання методу int.Parse - це проблема видачі помилки, якщо рядок не у правильному форматі, тобто якщо рядок містить будь-які символи, крім цифр.
Якщо присутній будь-який символ, відмінний від цифри, цей метод викличе таку помилку:
“(System.FormatException: Input string was not in a correct format.)”
Метод перетворення System.Convert
Іншим способом перетворення рядка в ціле число є використання методу Convert. Цей метод не такий простий, як попередній метод, оскільки ми повинні бути готові обробляти будь-які винятки, які можуть виникнути через взаємодію програми з помилковими даними.
Винятки також можуть забирати багато пам'яті, отже, не бажано зустрічати будь-який розшукуваний або небажаний виняток під час виконання. Наприклад, якщо в циклі виникає виняток, тоді на їх викидання буде витрачено багато пам'яті, і, отже, це уповільнить вашу програму.
Використання методу Convert дуже корисно, якщо ви хочете знати причину помилки аналізу. Він може виявити виняток і показати деталі несправності.
Програма
public class Program { public static String intString = '123'; public static void Main(string() args) { int i = 0; try { i = System.Convert.ToInt32(intString); } catch (Exception e) { } Console.WriteLine('The converted int is : '+i); } }
Вихідні дані
'Перетворений int: 123'
Пояснення
У наведеній вище програмі ми використовували метод convert для перетворення рядка в ціле число. Тут, якщо змінною String є цифра, вона буде перетворена в ціле число, але у випадку помилкового рядка, і вона видасть виняток, який буде оброблятися блоком catch.
int.TryParse метод
Одним з найпоширеніших способів синтаксичного аналізу подання рядка на 32-бітове ціле число є використання методу TryParse. Цей метод не враховує пробіли до або після рядка, але всі інші символи рядка повинні мати відповідний числовий тип, щоб полегшити перетворення.
Наприклад, будь-який пробіл, алфавіт або спеціальний символ всередині змінної може спричинити помилку.
Метод TryParse приймає два параметри: перший - це рядок, який користувач хоче перетворити, а другий параметр - це ключове слово “out”, за яким слідує змінна, в якій ви хочете зберегти значення. Він поверне значення на основі успіху чи невдалого перетворення.
TryParse(String, out var)
Давайте розглянемо просту програму для перетворення числового рядка в ціле число.
Програма
class Program { static void Main(string() args) { try { string value = '999'; int numeric; bool isTrue = int.TryParse(value, out numeric); if (isTrue) { Console.WriteLine('The Integer value is ' + numeric); } } catch (FormatException e) { Console.WriteLine(e.Message); } } }
Вихідні дані
Ціле число - 999
Пояснення
У наведеній вище програмі ми використовували «TryParse» для перетворення числового рядка в ціле число. Спочатку ми визначили рядкову змінну, яку нам потрібно перетворити. Потім ми ініціалізували ще одну змінну “числову” цілого типу. Потім ми використовували логічну змінну для зберігання поверненого значення спроби розбору.
Якщо воно повертає true, це означає, що рядок успішно перетворено в ціле число. Якщо воно повертає значення false, то виникає проблема з вхідним рядком. Ми оточили весь фрагмент програми всередині блоку try-catch для обробки будь-яких винятків, які можуть виникнути.
Перетворення нечислового рядка в ціле число
У всіх вищезазначених програмах ми намагалися перетворити числове значення рядка в ціле число, але в реальному сценарії більшу частину часу нам доводиться обробляти рядки, що містять спеціальні символи, алфавіти разом із цифрами. Якщо ми хочемо отримати лише числове значення, то це може бути трохи складно.
Наприклад, у нас є рядок ціни зі значенням 100 доларів, і нам потрібно отримати ціну у цілому числу. У цьому випадку, якщо ми спробуємо використати будь-який з вищеописаних підходів, ми отримаємо виняток.
Ці типи сценаріїв можна легко обробити, використовуючи цикл for і регулярний вираз після розбиття рядка на масив символів.
Давайте подивимось на програму:
class Program { static void Main(string() args) { string price = '0'; string priceNumeric = ''; for(inti =0; i Вихідні дані
Цифрове значення ціни: 100
Пояснення:
У наведеному вище фрагменті коду ми маємо цінову змінну рядкового типу даних. Потім ми визначаємо та ініціалізуємо іншу рядкову змінну priceNumeric. Ідея полягає в тому, щоб використовувати його для утримання числової частини змінної ціни.
Далі ми використовували цикл for, щоб перевірити чисельність кожного символу в рядку. Для цього ми спочатку отримали символи у змінній ch, використовуючи index. Потім ми використовували вираз регулярного виразу, щоб перевірити, чи відповідає символ, який ми вибрали з рядка, будь-якій числовій цифрі чи ні. (Вираз ' d' Regex означає співпадіння з однією цифровою цифрою.).
Потім ми об’єднуємо і зберігаємо числовий рядок у змінну priceNumeric. Після завершення циклу всі ваші числові рядки будуть додані до цієї змінної, а всі інші символи, включаючи спеціальні символи, алфавіти тощо, будуть видалені.
Як ми знаємо, цей рядок тепер містить лише числові символи, і ми можемо безпосередньо використовувати перетворення, щоб перетворити цей рядок у ціле число.
Висновок
У цьому підручнику ми дізналися, як можна перетворити рядок у ціле число. Ми також навчились використовувати різні методи, які можна використовувати для перетворення на основі вимог.
Пропоноване читання = >> Як перетворити рядок у ціле число на Java І Як перетворити Integer на String на Java
Далі ми обговорили програму для перетворення рядків зі спеціальними символами або алфавітами у ціле число, видаливши нецілі частини. Цю прикладну програму можна налаштувати відповідно до вимог користувача та використовувати для отримання числових даних із будь-якого рядка.
=> Прочитайте тут посібник для початківців на C #
Рекомендована література
- Підручник з рядків C # - Рядові методи з прикладами коду
- Рядок Java із підручником для буфера рядків та побудови рядків
- Потоки Java з методами та життєвим циклом
- Функції рядка Python
- Підручник з розділення рядків Python
- Навчіться використовувати клас C # StringBuilder та його методи на прикладах
- Розширений скрипт оболонки Unix: масиви, оператори тестування файлів і рядків, спеціальні змінні
- Випадкове число C # та генератор випадкових рядків C # із прикладами коду