Sitecore 5.2: Copy from one language to another

This piece of code moves all fields from one language to another. It is a sample code, so it is hardcoded to move from danish to swedish. Change the code to use your languages before using it:

void Switch(Sitecore.Data.Items.Item item)
{
  Sitecore.Data.Items.Item da = Sitecore.Context.ContentDatabase.Items[item.ID, Sitecore.Globalization.Language.Predefined.Danish];
  Sitecore.Data.Items.Item se = Sitecore.Context.ContentDatabase.Items[item.ID, Sitecore.Globalization.Language.Predefined.Swedish];
  se.Editing.BeginEdit();
  da.Editing.BeginEdit();
  foreach (Sitecore.Data.Fields.Field field in da.Fields)
  {
    if ( !field.Shared && !field.Name.StartsWith( "__" ) && field.Name.Trim() != "" )
    {
      se.Fields[field.Name].Value = field.Value;
      field.Value = "";
    }
  }
  da.Editing.EndEdit();
  se.Editing.EndEdit();
}