21/2/2008 18:08 El Bruno

[VS2008] Paste as StringBuilder !!!

Buenas,

desde hace varios años utilizo una herramienta que realmente me ahorra segundos valiosos al momento de escribir código. Se trata de Smart Paster, un add-in para Visual Studio que permite una forma "inteligente" de pegar texto dentro de Visual Studio.

Por ejemplo supongamos que posees el siguiente texto en el portapapeles

<?xml version="1.0" encoding="utf-8"?> <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"> <Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings" Target="webSettings.xml" Id="rId3" /> <Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings" Target="settings.xml" Id="rId2" /> <Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml" Id="rId1" /> <Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" Target="theme/theme1.xml" Id="rId5" /> <Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable" Target="fontTable.xml" Id="rId4" /> <Relationship Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="/media/image.png" Id="Rf09a420a753d439e" /> </Relationships>

Desde Visual Studio, simplemente con un RightClick

 

se convertirá en un string, creado con un StringBuilder:

StringBuilder myStringBuilder = new StringBuilder(977); myStringBuilder.AppendFormat(@"<?xml version=""1.0"" encoding=""utf-8""?>{0}", Environment.NewLine); myStringBuilder.AppendFormat(@"<Relationships xmlns=""http://schemas.openxmlformats.org/package/2006/relationships"">{0}", Environment.NewLine); myStringBuilder.AppendFormat(@" <Relationship "); myStringBuilder.AppendFormat(@"Type=""http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings"" "); myStringBuilder.AppendFormat(@"Target=""webSettings.xml"" Id=""rId3"" />{0}", Environment.NewLine); myStringBuilder.AppendFormat(@" <Relationship "); myStringBuilder.AppendFormat(@"Type=""http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings"" "); myStringBuilder.AppendFormat(@"Target=""settings.xml"" Id=""rId2"" />{0}", Environment.NewLine); myStringBuilder.AppendFormat(@" <Relationship Type=""http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles"" "); myStringBuilder.AppendFormat(@"Target=""styles.xml"" Id=""rId1"" />{0}", Environment.NewLine); myStringBuilder.AppendFormat(@" <Relationship Type=""http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme"" "); myStringBuilder.AppendFormat(@"Target=""theme/theme1.xml"" Id=""rId5"" />{0}", Environment.NewLine); myStringBuilder.AppendFormat(@" <Relationship "); myStringBuilder.AppendFormat(@"Type=""http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable"" "); myStringBuilder.AppendFormat(@"Target=""fontTable.xml"" Id=""rId4"" />{0}", Environment.NewLine); myStringBuilder.AppendFormat(@" <Relationship Type=""http://schemas.openxmlformats.org/officeDocument/2006/relationships/image"" "); myStringBuilder.AppendFormat(@"Target=""/media/image.png"" Id=""Rf09a420a753d439e"" />{0}", Environment.NewLine); myStringBuilder.AppendFormat(@"</Relationships>");

 

Está disponible para las siguientes versiones de Visual Studio

 

Saludos @ La Finca

{El Bruno}

 

Share this post :
Crossposting from ElBruno.com
Comparte este post:

# re: [VS2008] Paste as StringBuilder !!!

Friday, February 22, 2008 7:21 AM by Tori

Bruno deja de parsear tantos XML, que ya no sabes ni como se llaman las utilidades (Smart Paster no Smart Parser).

Aupa Geta.

# re: [VS2008] Paste as StringBuilder !!!

Friday, February 22, 2008 9:00 AM by El Bruno

jeje gracias tori !!! demasiadas pruebas y se me complicó el nombre ...

gracias de nuevo

Saludos

# re: [VS2008] Paste as StringBuilder !!!

Friday, February 22, 2008 10:02 AM by Tori

Por cierto Capuano a ver si te vienes un día a ver al Pato, si seguimos así lo mismo en la final de UEFA.

# re: [VS2008] Paste as StringBuilder !!!

Saturday, February 23, 2008 2:00 AM by Rodrigo Corral

Pues a mi me parece no muy útil, seria mucho más lógico usar en este caso un string verbatim sin más que usar un string builder. Me remito a lo comentado en un post sobre esto que ya puse: geeks.ms/.../rompe-tus-cadenas.aspx

Es un poco tarde, así que puede se me escape algo...

Saludos!!!

# re: [VS2008] Paste as StringBuilder !!!

Saturday, February 23, 2008 11:47 AM by El Bruno

Hey Rodrigo ... pues para esto está la opcion ""Paste As // String". Te crea un:

string s = @"<abc>

content

</abc>";

y Tori ... es cierto le debo una visita al Pato; y mas ahora q son los unicos que siguen en las 3 competiciones :D

Saludos

# re: [VS2008] Paste as StringBuilder !!!

Monday, July 28, 2008 3:51 PM by Kevin Gallagher

Thanks very much for the addin which I use often. I did add some functionality which allows custom "developer signature block." If interested I can send via email.

kevin.s.gallagher@state.or.us