2010-02-05 19 views

Respuesta

18

Sí, utilizar String.Format:

Dim newString As String = String.Format("{0} said {1} blah.", name, blah) 
+0

dulce, gracias: D – Harrison

16

En VB.NET 14 (para VS2015), puede utilizar string interpolation:

Dim newString As String = $"{name} said {blah} blah." 
+1

puede alguien pensar en por qué esto podría * no * es una mejora? Quiero decirle a mi equipo que esta es una mejora inequívoca, pero quiero asegurarme de no perderme algo antes de reclamarlo. –

+0

@ardave Si tiene la posibilidad de necesitar internacionalización más adelante, deberá volver a la llamada 'String.Format' para que la cadena de formato se convierta en una variable o función para recuperar de un archivo de recursos, etc. –

+1

Para En la internacionalización, también podría usar una función auxiliar que requeriría una menor modificación del código como [se explica aquí] (http://weblogs.asp.net/bleroy/c-6-string-interpolation-is-not-a- plantillas-motor-y-it-s-no-la-nueva-cadena-formato): 'formato de la cadena pública (fs FormattableString) {// Obtener versión traducida de la cadena de idioma por defecto: var = localFormat GetLocalized (fs.Format); // Alimentar la cadena de formato resultante en String.Format: return String.Format (localFormat, fs.GetArguments()); } ' – bkqc