2009-09-18 15 views
12

¿Hay algún método en C# eso es equivalente a la Javascript join() ..javascript equivalente de join() y toString() en C#?

var keyStr = keyList.join("_"); 

Mi requisito es para concatenar la matriz de cadenas en una sola cadena con el separador dado.

y quería convertir mi matriz de cadena entera en una sola cadena en javascript ... podemos hacerlo llamando toString() de la matriz jabvascript

C# toString de una matriz sólo imprime el tipo información. Si usamos toString en otros tipos como int, devuelve la representación de cadena de un int. Pero por qué esto no se ha implementado en String array. ¿no sería extraño?

Y

Respuesta

30

Puede utilizar string.Join():

string.Join("_", array); 

o, para las listas:

string.Join("_", list.ToArray()); 

La conversión de una matriz de cadenas en una sola cadena que se hace exactamente de la misma manera: Con string.Join() :

string.Join(" ", stringarray); 

Dan Elliott también tiene un buen método de extensión que puede usar para estar un poco más cerca de JavaScript, sintaxis.

+0

gracias Johannes. La combinación funciona a la perfección, pero mi segundo requisito es convertir una matriz de cadenas en un único valor de serie ... – RameshVel

+1

@Ramesh puede usar String.Join ("", stringArray) o String.Concat (stringArray) –

+0

Lo siento, le he leído mal. .. dos veces por ahora ... necesito ... más ... café ... – Joey

0

Pruebe el código siguiente.

string[] arr=new string[]{"aa","bb","cc"}; 
string.Join("-", arr); 
2

si desea añadir la funcionalidad de una matriz de cadenas que podría hacer con un método de extensión

public static class ArrayExtension 
{ 

    public static string AsString(this string[] array, string seperator) 
    { 
    return string.Join(seperator, array); 
    } 
} 

allí tendría que escribir:

var keyStr = keyList.AsString("_"); 
+0

gracias Dan, mira de cerca javacript ... – RameshVel

Cuestiones relacionadas