Foros del Web » Programación para mayores de 30 ;) » .NET »

Saber si char es vacio

Estas en el tema de Saber si char es vacio en el foro de .NET en Foros del Web. Como se puede saber si un char está vacio? o vaciar el char?...
  #1 (permalink)  
Antiguo 03/06/2008, 08:52
 
Fecha de Ingreso: julio-2006
Mensajes: 145
Antigüedad: 17 años, 10 meses
Puntos: 0
Saber si char es vacio

Como se puede saber si un char está vacio?
o vaciar el char?
  #2 (permalink)  
Antiguo 03/06/2008, 09:29
 
Fecha de Ingreso: mayo-2008
Mensajes: 28
Antigüedad: 16 años
Puntos: 1
Respuesta: Saber si char es vacio

dim car as char

if car="" then

'tu codigo aqui

end if

tan sencillo como eso
  #3 (permalink)  
Antiguo 03/06/2008, 09:45
 
Fecha de Ingreso: julio-2006
Mensajes: 145
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Saber si char es vacio

char car;
car = "";

if (car == "")
{

string entra= "";

}
else
{
string no entra= "";
}

en c sharp este es mi codigo y no funciona.
Como se podria dejar un char a vacio? y luego compararlo?


Gracias!
  #4 (permalink)  
Antiguo 03/06/2008, 09:59
 
Fecha de Ingreso: abril-2008
Mensajes: 264
Antigüedad: 16 años
Puntos: 2
Respuesta: Saber si char es vacio

Ojo! los caracteres se escriben con comillas simples 'a', 'Z'. Las cadenas con "comillas dobles".

Probá con eso y avisanos!

Saludos
  #5 (permalink)  
Antiguo 03/06/2008, 10:01
 
Fecha de Ingreso: abril-2008
Mensajes: 264
Antigüedad: 16 años
Puntos: 2
Respuesta: Saber si char es vacio

Ah, igual no se si existe ni tiene sentido que exista el "caracter vacio". Para eso existe el null, que es justamente la falta de valor.
  #6 (permalink)  
Antiguo 03/06/2008, 10:09
 
Fecha de Ingreso: julio-2006
Mensajes: 145
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Saber si char es vacio

char car;
car = null;

if (car ==null)
{

string entra= "";

}
else
{
string no entra= "";
}

*no acepta valores nulos
  #7 (permalink)  
Antiguo 03/06/2008, 10:56
 
Fecha de Ingreso: febrero-2008
Mensajes: 11
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Saber si char es vacio

Lo que te quiso decir guille es que pusiera

if char== ''
{
//Codigo
}
  #8 (permalink)  
Antiguo 03/06/2008, 11:00
 
Fecha de Ingreso: abril-2008
Mensajes: 264
Antigüedad: 16 años
Puntos: 2
Respuesta: Saber si char es vacio

Claro, porque char es un tipo de valor, no es un objeto. Tampoco podes asignarle null a los int o a los double por ejemplo...

Prueba con

Código:
char unChar = '';

(unChar == '')? return "hola, esto anduvo" : return "no, no anduvo";

Sino, lo que se me ocurre es usar wrappers, un objeto que contenga un caracter... Que hasta donde yo se .NET no tiene y Java si :(.

Seria algo como:

Código:
public class NullableCharacter{

private bool _hasValue = false;
private char _value;

public bool hasValue{
  get { return _hasValue; }
}

public char Value{
  set { if (value != null){
                 _value = value;
           }
           _hasValue = (value != null);
        }
  get { return _value; }
}

public NullableCharacter(char value){
  this.Value = value;
}

}

y despues puedes hacer algo como

NullableCharacter c = new NullableCharacter();

if (c.HasValue){
//Aca es que tiene valor
}else{
//Aca no
}

y lo podes crear como

new NullableCharacter('a');

...
Espero que sirva
Un saludo
Guille
  #9 (permalink)  
Antiguo 03/06/2008, 11:23
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: Saber si char es vacio

Coincido con guille

pero puedes hacerlo simplemente asi.

Nullable<char> mychar = new Nullable<char>;
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #10 (permalink)  
Antiguo 04/06/2008, 10:20
 
Fecha de Ingreso: julio-2006
Mensajes: 145
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Saber si char es vacio

me vale con esto ultimo
gracias!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:05.