يعد تحويل البيانات من تنسيق إلى آخر أحد أكثر العمليات شيوعا في البرمجة. يعد تحويل سلسلة إلى قيمة رقمية أحد هذه التحويلات. في هذه المقالة ، سننظر في كيفية تحويل سلسلة إلى سلسلة طويلة.
هناك العديد من الطرق لإجراء هذا التحول في لغات البرمجة. في بعض اللغات ، مثل بيثون ، يمكن القيام بذلك باستخدام الدالة إنت () ، والتي تأخذ سلسلة وإرجاع القيمة الرقمية المقابلة. ومع ذلك ، فإن اللغات الأخرى ، مثل جافا أو سي++ ، تتطلب استخدام طرق متخصصة.
طريقة واحدة لتحويل سلسلة إلى طويلة في جافا هو استخدام طريقة بارسيلونغ () من فئة طويلة. تقبل هذه الطريقة سلسلة وتعيد القيمة الرقمية المقابلة للنوع الطويل. من المهم ملاحظة أن هذه العملية قد تسبب نومبرفورماتكسيبتيون إذا تعذر تحويل السلسلة التي تم تمريرها إلى رقم.
مثال على استخدام طريقة بارسيلونج () في جافا:
سلسلة عددسلسلة = "12345";
عدد طويل = طويل.بارسيلونغ (نومبريسترينغ) ؛ / / تحويل سلسلة إلى طويلة
الآن ، يحتوي متغير الرقم على القيمة الرقمية التي تم الحصول عليها من السلسلة. إذا تعذر تحويل السلسلة التي تم تمريرها إلى رقم ، فسيتم طرح استثناء ويمكن إجراء معالجته باستخدام كتلة المحاولة.
- ما هي سلسلة وطويلة في البرمجة?
- لماذا أحتاج إلى تحويل البيانات من سلسلة إلى طويلة?
- دليل تحويل البيانات
- 1. استخدام وظائف لغة البرمجة القياسية
- 3. التحويل اليدوي
- خاتمة
- الخطوة 1: استخدام وظيفة التحليل
- الخطوة 2: تطبيق وظيفة تريبارس
- الخطوة 3: استخدام التحويل.تونت 64 وظيفة
- سؤال وجواب
- هل من الممكن تحويل سلسلة تحتوي على قيمة غير رقمية إلى النوع الطويل?
- هل من الممكن تحويل سلسلة تحتوي على رقم عشري إلى النوع الطويل?
ما هي سلسلة وطويلة في البرمجة?
سلسلة (سلسلة) وطويلة (نوع بيانات صحيح) هي مفاهيم البرمجة الهامة. تستخدم أنواع البيانات هذه لتخزين المعلومات ومعالجتها بلغات برمجة مختلفة ، بما في ذلك سي++ وجافا وبايثون وغيرها.
السلسلة عبارة عن سلسلة من الأحرف مثل الأحرف والأرقام والأحرف الخاصة. يتم استخدامه لتمثيل المعلومات النصية مثل الأسماء أو العبارات أو العناوين. عادة ما يتم وضع السلاسل بين علامتي اقتباس للإشارة إلى بداية السلسلة ونهايتها.
على سبيل المثال:
اسم السلسلة = "جون";
يحتوي على سلسلة "جون".
طويل هو نوع بيانات صحيح يستخدم لتخزين أعداد صحيحة كبيرة. يمكن أن تمثل الأعداد الصحيحة في النطاق من -9223372036854775808 إلى 9223372036854775807 (حسب لغة البرمجة).
على سبيل المثال:
عدد طويل = 1000000;
يحتوي على القيمة 1000000.
سلسلة وطويلة لها خصائص وأساليب مختلفة تسمح للمبرمجين بإجراء عمليات مختلفة معهم. على سبيل المثال ، بالنسبة للسلاسل ، يمكنك استخدام طرق لدمج السلاسل أو تقسيمها أو تعديلها. باستخدام قيم عدد صحيح مثل طويل ، يمكنك إجراء عمليات حسابية ومقارنة القيم والمزيد.
من المهم أن تضع في اعتبارك أن لغات البرمجة المختلفة قد يكون لها قواعدها وميزاتها الخاصة للعمل مع السلاسل والقيم الصحيحة. لذلك ، يوصى بالرجوع إلى الوثائق أو المواد التدريبية للغة معينة للحصول على معلومات أكثر تفصيلا حول العمل مع السلسلة والطويلة.
لماذا أحتاج إلى تحويل البيانات من سلسلة إلى طويلة?
يعد تحويل البيانات من نوع السلسلة إلى النوع الطويل عملية مهمة عند العمل مع القيم الرقمية بلغات البرمجة المختلفة.
النوع الطويل هو تنسيق بيانات صحيح يمكنه تخزين القيم في النطاق من -9 ، 223 ، 372 ، 036 ، 854 ، 775 ، 808 إلى 9 ، 223 ، 372 ، 036 ، 854 ، 775 ، 807. يستخدم نوع البيانات هذا على نطاق واسع لتمثيل القيم الرقمية الكبيرة ، على سبيل المثال ، في العمليات الحسابية ، عند العمل مع التواريخ والأوقات ، وكذلك عند إجراء العمليات الحسابية.
يسمح تحويل البيانات من نوع السلسلة إلى النوع الطويل للمبرمجين بالحصول على قيم رقمية من سلاسل نصية يمكن للمستخدم إدخالها أو الحصول عليها من مصادر بيانات أخرى. يتيح ذلك للبرنامج العمل مع البيانات الرقمية وإجراء عمليات مختلفة ، على سبيل المثال ، مقارنة القيم وإضافة الأرقام وضربها وإجراء العمليات الحسابية وغير ذلك الكثير.
يمكن أن يكون تحويل البيانات من نوع السلسلة إلى النوع الطويل مفيدا أيضا عند معالجة البيانات المخزنة بتنسيق نصي ، على سبيل المثال ، في الملفات أو قواعد البيانات. السماح للبرنامج لاستخراج القيم الرقمية من هذه البيانات النص واستخدامها في مزيد من العمليات الحسابية أو التحليل.
من المهم ملاحظة أن تحويل البيانات من نوع السلسلة إلى النوع الطويل يمكن أن يتسبب في حدوث خطأ إذا تعذر تحويل السلسلة بشكل صحيح إلى رقم. على سبيل المثال ، إذا كانت السلسلة تحتوي على أحرف غير الأرقام ، أو إذا كانت قيمة الرقم خارج نطاق النوع الطويل. لذلك ، من المهم التعامل مع مثل هذه المواقف وتوفير التحقق من صحة البيانات الإضافية قبل تحويلها.
في الختام ، يلعب تحويل البيانات من نوع السلسلة إلى النوع الطويل دورا مهما عند العمل مع القيم الرقمية في البرمجة. يسمح للبرامج بالحصول على قيم رقمية من سلاسل نصية واستخدامها في العمليات الحسابية والعمليات الحسابية والعمليات الأخرى المتعلقة بالأرقام.
دليل تحويل البيانات
يعد تحويل البيانات عملية مهمة في تطوير البرمجيات. واحدة من أكثر الحالات شيوعا هي تحويل سلسلة إلى رقم طويل. قد يكون هذا ضروريا ، على سبيل المثال ، عند معالجة إدخال المستخدم أو عند العمل مع قواعد البيانات.
هناك عدة طرق لتحويل سلسلة إلى رقم طويل بلغات برمجة مختلفة. دعونا نلقي نظرة على أمثلة من أكثرها شيوعا.
1. استخدام وظائف لغة البرمجة القياسية
:
سلسلة شارع = "12345";
عدد طويل = طويل.بارسيلونج (شارع);
2. استخدام المكتبات للعمل مع السلاسل
:
شارع = "12345"
عدد = كثافة العمليات (شارع)
3. التحويل اليدوي
إذا لم تكن أي من الطرق أو المكتبات القياسية مناسبة ، فيمكنك تحويل السلسلة يدويا إلى رقم طويل. للقيام بذلك ، انتقل من خلال أحرف السلسلة ، وضرب كل رقم من قبل السلطة المقابلة من عشرة ، وإضافة القيم الناتجة. على سبيل المثال ، في ج++ ، يمكنك استخدام التعليمات البرمجية التالية:
# تشمل
# تشمل
using namespace std;
long stringToLong(string str) {
long number = 0;
int len = str.length();
for(int i=len-1; i>=0; i--) {
int digit = str[i] - '0';
number += digit * pow(10, len-1-i);
}
return number;
}
int main() {
string str = "12345";
long number = stringToLong(str);
cout << number << endl;
return 0;
}
В данном примере мы показали ручное преобразование строки в число типа long в языке C++. قد تختلف خوارزمية التحويل اعتمادا على لغة البرمجة المختارة.
خاتمة
يمكن إجراء تحويل سلسلة إلى رقم طويل باستخدام وظائف لغة البرمجة القياسية أو المكتبات المتخصصة أو باستخدام التحويل اليدوي. يعتمد اختيار طريقة التحويل على المهمة المحددة ولغة البرمجة المستخدمة.
الخطوة 1: استخدام وظيفة التحليل
الطريقة الأولى لتحويل سلسلة إلى رقم هي استخدام وظيفة التحليل. في ج# ، وظيفة طويلة.يستخدم التحليل لتحويل سلسلة إلى قيمة طويلة. تأخذ هذه الوظيفة سلسلة كوسيطة وتعيد القيمة الرقمية المقابلة.
مثال على استخدام وظيفة التحليل:
| الخط الأصلي | الرقم المحول |
|---|---|
| هو "12345" | 12345 |
| "-9876" | -9876 |
| "0" | 0 |
يتم إجراء التحويل من خلال قراءة أحرف السلسلة وتحديد قيمها الرقمية. تتوقع دالة التحليل أن تحتوي السلسلة على أحرف رقمية فقط ولا تسمح بمسافات أو أحرف أو فواصل إضافية. إذا كانت الأحرف غير صالحة موجودة في السلسلة ، سيتم طرح استثناء فورماتكسيبتيون.
- إذا كانت السلسلة تحتوي على علامة زائد أو ناقص بادئة ، فستقوم دالة التحليل بتفسير العلامة وتحويل الرقم بشكل صحيح.
- ملاحظة: إذا كان هناك مسافة قبل رقم في السلسلة ، فإن وظيفة تحليل أيضا رمي فورماتكسيبتيون.
مثال على التعامل مع استثناء فورماتكسيبتيون:
حاول
{
إدخال السلسلة = "123 أبك";
عدد طويل = طويل.تحليل (إدخال);
وحدة التحكم.خط الكتابة (رقم);
}
الصيد (فورماتكسيبتيون)
{
وحدة التحكم.خط الكتابة ("تنسيق رقم غير صالح");
}
في هذا المثال ، عند محاولة تحويل السلسلة" 123 أبك "إلى رقم ، وظيفة تحليل بالكشف عن وجود حرف غير صالح" أ " ويولد استثناء فورماتكسيبتيون. نتيجة لذلك ، سيتم عرض الرسالة "تنسيق رقم غير صالح".
يمكن أيضا استخدام وظائف التحليل لتحويل القيم الرقمية من أنظمة الأرقام الأخرى. على سبيل المثال:
سلسلة بيناريينبوت = "101010";
رقم ثنائي طويل = طويل.تحليل (بيناريينبوت ، النظام.العولمة.أنماط الأرقام.ثنائي);
وحدة التحكم.خط الكتابة (رقم ثنائي) ؛ / / الإخراج: 42
في هذا المثال ، يتم تفسير السلسلة "101010" كرقم ثنائي وتحويلها إلى الرقم العشري 42. خيار النظام.العولمة.أنماط الأرقام.ثنائي يرشد وظيفة تحليل لاستخدام نظام الأرقام الثنائية للتحويل.
الخطوة 2: تطبيق وظيفة تريبارس
عندما تحتاج إلى تحويل سلسلة إلى قيمة طويلة ، فإن الخطوة الثانية هي استخدام الدالة تريبارس. توفر هذه الوظيفة طريقة تحويل أكثر أمانا من مجرد استخدام مشغل تحويل النوع.
تتحقق دالة تريبارس مما إذا كان يمكن تحويل السلسلة بشكل صحيح إلى قيمة طويلة. إذا كان التحويل ناجحا ، فإن الدالة ترجع صحيح ، وسيتم كتابة القيمة المحولة إلى معلمة الإخراج. إذا فشل التحويل ، ترجع الدالة خطأ ، وتبقى معلمة الإخراج دون تغيير أو تأخذ القيمة الافتراضية.
مثال على استخدام وظيفة تريبارس:
إدخال السلسلة = "12345";
عدد طويل;
منطقي نتيجة = طويلة.تريبارس (إدخال ، رقم الخروج);
في هذا المثال ، يحتوي متغير الإدخال على السلسلة "12345" ، والتي نريد تحويلها إلى قيمة طويلة. نعلن متغير عدد من نوع طويلة ، والتي سوف تخزين نتيجة التحويل. ثم ، ونحن ندعو وظيفة تريبارس ، ويمر عليه سلسلة الإدخال ومتغير الرقم كمعلمة الإخراج.
إذا كان التحويل ناجحا ، ترجع الدالة تريبارس صحيح ، ويتم تعيين قيمة متغير الرقم إلى 12345. في حالة فشل التحويل ، ترجع الدالة تريبارس خطأ ، ويظل متغير الرقم دون تغيير أو يأخذ القيمة الافتراضية (في هذه الحالة ، 0).
باستخدام وظيفة تريبارس يسمح لك للتعامل مع الحالات عندما سلسلة الإدخال ليست عددا صالحا. هذا يجعل التعليمات البرمجية أكثر مقاومة للخطأ ويساعد على تجنب الاستثناءات.
الخطوة 3: استخدام التحويل.تونت 64 وظيفة
في ج# ، يمكننا استخدام التحويل.تونت 64 وظيفة لتحويل سلسلة إلى عدد طويل. تأخذ هذه الوظيفة كوسيطة سلسلة تمثل رقما بتنسيق تمثيل سلسلة لرقم ، وتعيد قيمة رقمية من النوع طويل.
مثال على استخدام الوظيفة:
سلسلة سترنومبر = "12345";
عدد طويل = تحويل.تونت 64 (رقم);
في هذا المثال ، تحتوي قيمة متغير سترنومبر على السلسلة "12345". نحن ندعو وظيفة التحويل.تونت 64 وتمرير هذه السلسلة إليها كحجة. تقوم الدالة بتحويل سلسلة إلى عدد من النوع الطويل وإرجاع قيمتها ، والتي نحفظها إلى رقم المتغير.
إذا كانت السلسلة تحتوي على قيمة غير صالحة أو لا يمكن تحويلها إلى رقم طويل ، فإن تحويل.توينت 64 وظيفة يلقي استثناء فورماتكسيبتيون.
مثال على استخدام وظيفة التحقق من الاستثناء:
سلسلة سترنومبر = "أبسد";
حاول
{
عدد طويل = تحويل.تونت 64 (رقم);
وحدة التحكم.خط الكتابة (رقم);
}
الصيد (فورماتكسيبتيون ه)
{
وحدة التحكم.خط الكتابة ("قيمة سلسلة غير صالحة:" + ه. رسالة);
}
يحاول المثال أعلاه تحويل السلسلة" أبسد " إلى رقم طويل ، وهو غير صحيح. في هذه الحالة ، وظيفة التحويل.توينت 64 يلقي استثناء فورماتكسيبتيون. في كتلة الصيد ، نلتقط هذا الاستثناء ونعرض رسالة خطأ.
باستخدام تحويل.توينت 64 وظيفة ، يمكنك تحويل السلاسل إلى أرقام طويلة في ج# البرامج الخاصة بك. لكن تذكر أنه لا يمكن تحويل جميع السلاسل بشكل صحيح إلى رقم ، وفي مثل هذه الحالات قد يحدث استثناء.
سؤال وجواب
هل من الممكن تحويل سلسلة تحتوي على قيمة غير رقمية إلى النوع الطويل?
لا ، لا يمكنك تحويل سلسلة تحتوي على قيمة غير رقمية إلى النوع الطويل. طريقة بارسيلونغ () يحول فقط سلسلة تحتوي على قيمة رقمية. إذا حاولت تحويل سلسلة ذات قيمة غير رقمية (على سبيل المثال ، "أبك") ، سيحدث نومبرفورماتكسيبتيون.
هل من الممكن تحويل سلسلة تحتوي على رقم عشري إلى النوع الطويل?
لا ، لا يمكنك تحويل سلسلة تحتوي على رقم عشري إلى النوع الطويل. طرق بارسيلونغ () و فالوف () تحويل القيم الصحيحة فقط. إذا حاولت تحويل سلسلة برقم عشري (على سبيل المثال ، "12.34") ، فسيحدث رقم فورماتكسيبتيون.