Parsing


Parsing

As human use the language to communicate and as the language can be expressed as text, many computer programs require converting text to numeric values or other data type. Wintempla provides several converting functions inside Sys::Convert as illustrated in the examples below.
Como los humanos usan el lenguaje para comunicarse y como el lenguaje se puede expresar como texto, muchos programas de computadora requieren convertir el texto a valores numéricos u otros tipos de datos. Wintempla proprociona diversas funciones para convertir dentro de Sys::Convert como se ilustra en los ejemplos de abajo.

Problem 1.
Create a program called Entero to test the conversion from integer to text.
Cree un programa llamado Entero para probar la conversión desde texto a entero.

Entero.cpp
void Entero::Window_Open(Win::Event& e)
{
     int age = 22; //years
     this->MessageBox(Sys::Convert::ToString(age), L"Edad", MB_OK);
}


Problem 2
Repeat the previous problem using Win32.
Repita el problema anterior usando Win32.

Entero32.cpp
#include "stdafx.h"
#include "Entero32.h"

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE, LPTSTR cmdLine, int cmdShow)
{
     int age = 22; // years
     wchar_t text[32];
     _snwprintf_s(text, 32, _TRUNCATE, L"%d", age);
     ::MessageBox(NULL, text, L"Edad", MB_OK);
     return 0;
}


Problem 3
Create a program called Integer to test the conversion from text to an integer value.
Cree un programa llamado Integer para probar la conversión desde texto a un valor entero.

Integer.cpp
void Integer::Window_Open(Win::Event& e)
{
     int ancho = Sys::Convert::ToInt(L"10 meters"); //The text 10 meters is converted to an integer value
     ancho--;
     wstring text;
     Sys::Format(text, L"The width is %d", ancho);
     this->MessageBox(L"***** Ancho *****", text, MB_OK | MB_ICONINFORMATION);
}


Problem 4
Repeat the previous problem using Win32.
Repita el problema anterior usando Win32.

Integer32.cpp
#include "stdafx.h"
#include "Integer32.h"

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE, LPTSTR cmdLine, int cmdShow)
{
     int ancho = _wtoi(L"10 meters"); // The text 10 meters is converted to an integer value
     ancho--;
     wchar_t text[128];
     _snwprintf_s(text, 32, _TRUNCATE, L"The width is %d", ancho);
     ::MessageBox(NULL, L"**** Ancho ****", text, MB_OK | MB_ICONINFORMATION);
     return 0;
}


Problem 5
Create a program called Cast to test the conversion from text to double.
Cree un programa llamado Cast para probar la conversión desde texto a double.

Cast.cpp
void Cast::Window_Open(Win::Event& e)
{
     double distance = Sys::Convert::ToDouble(L"18.126 Km");
     wstring text;
     Sys::Format(text,L"%g", distance);
     this->MessageBox(text, text, MB_OK);
}


Problem 6
Repeat the previous problem using Win32.
Repita el problema anterior usando Win32.

Cast32.cpp
#include "stdafx.h"
#include "Cast32.h"

int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE, LPTSTR cmdLine, int cmdShow)
{
     double distance = _wtof(L"18.126 Km");
     wchar_t text[32];
     _snwprintf_s(text, 32, _TRUNCATE, L"%g", distance);
     ::MessageBox(NULL, text, text, MB_OK);
     return 0;
}


Tip
javaIn Java, you can use Double.parseDouble to convert from text to double, or Integer.parseInt to convert from text to integer.
javaEn Java, usted puede usar Double.parseDouble para convertir de texto a double, o Integer.parseInt para convertir de texto a entero.

Problem 7
Create a C# project called ConvertS to test the conversion of numbers to text, and to parse text to extract a number.
Cree un proyecto de C# llamado ConvertS para probar la conversión de números a texto, y parsear texto para extraer un número.

Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ConvertS
{
     static class Program
     {
          /// <summary>
          /// The main entry point for the application.
          /// </summary>
          [STAThread]
          static void Main()
          {
               Application.EnableVisualStyles();
               Application.SetCompatibleTextRenderingDefault(false);
               //Application.Run(new Form1());
               int age = 20;
               double weight = 55.6 + Double.Parse("21");
               MessageBox.Show(age.ToString(), weight.ToString("0.00"));
          }
     }
}


ConvertSRun

© Copyright 2000-2019 Wintempla selo. All Rights Reserved. Sep 05 2019. Home