Retirar somente o Digito 0 dos CNPJ que começa com 0

Caros amigos, tenho um objeto que recebe CNPJ, enquanto o CNPJ é utilizado por outros metodos detro do portal é necessario ele completo CNPJ: 04.702.609/0001 - 90.
Porem quando necessito enviar para um serviço webservice que se for com o 0 inicial ele não encontra o cliente.Então na minha analise eu preciso somente no momento de mandar o objeto para consultar no serviço tirar esse 0 inicial do CNPJ.

Procurei no forum e ja testei varias formas… mas não estou acertando, meu problema não é com replace mas para criar a condição que pegue somente o cnpj com 0 inicial para tirar esse caracter e ficar CNPJ:4702609000190

Se o primeiro caractere for ‘0’, retire-o da String.

Parece óbvio, não é? Mas essa é a lógica. Agora, como posso traduzir isso para Java?

Dê uma olhada em Substring.

Imagino que algo assim já resolva:

String cpnj = "04702609000190";

if (cnpj.charAt(0).equals("0")) {//Verifica se o 1º dígito do CNPJ é igual a 0
    cnpj = cpnj.substring(1,14);//Ignora o 1º dígito da String
}

E aí @Rdgmrm, Tudo bem?!

Creio que o código abaixo resolva seu problema.

public String CNPJ(String cnpj) {
    char firstIndex = cnpj.toCharArray()[0];

    if (firstIndex == '0') {
        return cnpj.replaceAll("[./-]", "").replaceFirst("0", "");
    } else {
        return cnpj.replaceAll("[./-]", "");
    }
}

Abraços!

String cnpj = "04702609000190"; //formatacao removida
cnpj = Long.valueOf(cnpj).toString();
System.out.println(cnpj);

Uma alternativa com regex:

String cnpj = "04702609000190";
String cnpjSemZeroNoInicio = cnpj.replaceAll("^0*", "");