Ciao!
sono stato in ferie, tornato ieri...
Mah, io lavorerei direttamente con la stringa iniziale mettendoci gli slash (/) al posto giusto.
Volendo poi usare la funzione format convertirei quanto ottenuto in datetime.
Per mettere gli slash dovresti usare le solite funzioni per accedere a diverse posizioni all'interno della stringa, ma siccome non mi va perchè trovo che sia un modo noioso e brutto da leggere ci metto un po' di fantasia e ti propongo questo:
Crea un progetto
nel form metti 3 textbox (lascia i nomi di default) e un button
doppio click sul form cancella tutto e incolla questo:
VB Programming
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim chlist As List(Of Char) = TextBox1.Text.ToList
Dim charr As Char()
chlist.Insert(2, "/")
chlist.Insert(5, "/")
charr = chlist.ToArray()
TextBox2.Text = New String(charr)
Dim dt As DateTime = DateTime.Parse(TextBox2.Text)
TextBox3.Text = String.Format("{0:D}", dt)
End Sub
End Class
In poche parole quello che ho fatto:
Nel textbox1 scrivo la stringa iniziale (es. 23122012)
Prendo quella stringa e la converto in una lista di caratteri
Inserisco nella lista i 2 caratteri slash alle posizioni corrette
Converto la lista in array di caratteri
e quindi converto l'array di caratteri in stringa
Prendo la stringa ottenuta e la metto nella textbox2 per visualizzarla
A questo punto volendo fare un passaggio in piu non richiesto, converto questa stringa in DateTime in modo da poter applicare la funzione format dicendo che voglio il formato esteso che come risultato mi darà "Domenica 23 dicembre 2012"
Il tutto per divertirsi un po', rimane sempre valida l'opzione di comporre la stringa carattere per carattere con i soliti sistemi di gestione delle stringhe
ciao!