Converter uma String em um Calendar

Olá Boa tarde! preciso urgente.
Estou criando a Classe teste do meu programa, onde o usuário irá digitar algo e ele ira converter de String para double, mas quando cheguei na parte de converter uma String em Calendar não consigo veja o exemplo abaixo:

[code]package revisaoprova;

import javax.swing.JOptionPane;

public class TesteViagem {

public static void main(String args[]) throws GastoException {

    Viagem dados = new Viagem();

    //Faz todas as perguntas para o Usuário
    String nome = JOptionPane.showInputDialog("Digite o Nome da Viagem: ");

    String origem = JOptionPane.showInputDialog("Digite o Local de Saída: ");
    dados.setOrigem(origem);

    String destino = JOptionPane.showInputDialog("Digite o Local de Destino: ");
    dados.setDestino(destino);
   
    String inicio = JOptionPane.showInputDialog("Dia de Inicio da Viagem: "); <-- AQUI ESTÁ O PROBLEMA!! 
    dados.setInicio(...........);
    
    String fim = JOptionPane.showInputDialog("Dia do Fim da Viagem: "); <-- AQUI ESTÁ O PROBLEMA!!
    dados.setFim(null);
    
    String aliGasto = JOptionPane.showInputDialog("Valor com Gasto em Alimentos: ");
    dados.setGastosAlimentos(Double.parseDouble(aliGasto));
    
    String combgasto = JOptionPane.showInputDialog("Valor com Gastos de Combustivel: ");
    dados.setGastosCombustivel(Double.parseDouble(combgasto));
   
    //Imprimir na Tela o resultado.
    JOptionPane.showMessageDialog(null, "Viagem de: " + nome
            + "\n" + "Local de Saída: " + origem
            + "\n " + "Local de Destino: " + destino);[/code]

A que tipo de calendar você se refere?

GregorianCalendar

Tenta assim

GregorianCalendar gc = new GregorianCalendar(); gc.setTime(new SimpleDateFormat("dd/MM/yyyy").parse(Stringdata));

Na verdade no Calendar pra setar os campos que são do tipo String você precisa fazer um parseInt no método set do Calendar, veja se esse exemplo abaixo não te ajuda a fazer o que você quer fazer:

package teste;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

class DateValue {

private String dateAtual = "";
private String dateAlter = "";

DateValue(char current, String dateAlter) throws ParseException {

	SimpleDateFormat sf = new SimpleDateFormat("dd/MM/yyyy");

	String validaData[] = dateAlter.split("/");
	String validate = dateAlter;
	Calendar c = Calendar.getInstance();
	
	c.setLenient(false);
	sf.setLenient(false);
	
	c.set(Integer.parseInt(validaData[2]) + 1, Integer.parseInt(validaData[1])-1, Integer.parseInt(validaData[0]));

	try {
		
	  validate = sf.format(c.getTime());
	
	}catch(Exception e) {

		System.err.println("Erro na Data Inserida:" + e.getMessage());
	}
	
	if (current == 'S') {

		dateAtual = sf.format(new Date());
	}

	this.dateAlter = DateFormat.getDateInstance().format(sf.parse(validate));

	System.out.println(this);
}

public String toString() {
	return String.format("DateAtual:%s - Data Atualizada:%s", dateAtual, this.dateAlter);
}

public static void main(String[] args) throws ParseException {
	new DateValue('S', "10/10/2010");

}

}