1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[C] Weird... transformar caracteres especiais

Discussão em 'Programação' iniciada por taca, 13 de Junho de 2008. (Respostas: 9; Visualizações: 1563)

  1. taca

    taca Power Member

    boas

    vou expor o meu problema:

    tenho esta linha de codigo que serve para tirar o dia da semana de hoje:

    strftime(d_semana, sizeof(d_semana), "%A", ts);

    o problema é que há dias com acento (mas quem é que teve a infeliz ideia de inventar sábado, com acento no a???>()

    o utilizador introduz um dia, e depois compara-se o dia que o user introduziu com d_semana.

    Só que aos sábados a comparação não funca porque o user mete "sabado" e o d_semana dá "sβbado".


    Alguém me pode dizer como é que eu transformo o char "sβbado" para "sabado"?

    Cumprimentos
     
    Última edição: 13 de Junho de 2008
  2. acfryx

    acfryx Power Member

    Que compilador estás a usar?
     
  3. armagedalbeebop

    armagedalbeebop Power Member

    ja me tem acontecido isso em c++..leio de um ficheiro,mostro na consola e aparecem esses caracteres nos acentos,mas depois imprimo para o ficheiro e dá ok,leva-me a crer que seja do charset da consola ou algo do genero n sei,por acaso até me dava jeito resolver isso :007:
     
  4. taca

    taca Power Member

    Dev c++

    A linguagem é o C

    Problem solved

    strcpy (d_semana,"sabado");

    loool
     
    Última edição pelo moderador: 17 de Junho de 2008
  5. acfryx

    acfryx Power Member

    Nas opções do projecto, vai ao separador Parameters e no campo Compiler adiciona os seguintes comandos: "-finput-charset=ISO-8859-1 -fexec-charset=cp437".

    NOTE: se quiseres que este comando faça efeito para todos os projectos que crias, vais às opções do compilador e na aba Compiler pões um visto na opção "Add the following commands when calling the compiler" e na caixa de texto por baixo adicionas o mesmo texto de à bocado.

    Espero ter ajudado...
     
  6. h4des

    h4des Power Member

    É possivel fazer isso com o djgpp ?
     
  7. acfryx

    acfryx Power Member

    Usando os comandos que referi já não é precisas de fazer isso.

    Não conheço, mas fiz uma procura rápida e pareceu-me que usa o GCC, se for esse o caso sim é possível.
     
  8. Quaker

    Quaker Power Member

    Utiliza esta função
    numcharConv = MultiByteToWideChar(CP_UTF8,MB_ERR_INVALID_CHARS,valor,_mbstrlen(valor),textRet,maxLen);
    esta função converte para o formato UTF8....
     
  9. caam14

    caam14 I'm cool cuz I Fold

    Já há algum tempo que andava à procura da solução para este problema:D
    Obrigado pela solução:x2:
    Fiquem bem.
     
  10. IComeFromBehind

    IComeFromBehind Power Member

    Verificar o code page e fazer a conversão apropriada parece-me uma solução muito melhor.
     

Partilhar esta Página