Ir para conteúdo
Fórum Script Brasil

iSoron

Veteranos
  • Total de itens

    1.317
  • Registro em

  • Última visita

Posts postados por iSoron

  1. Saindo fora do loop, o valor de i é qual, 7 ou 8?

    Nenhum dos dois.

    Depois do loop, acaba o escopo onde ele estava declarado.

    Dá erro de compilação se você tentar usar o i.

  2. Não estou confundindo.

    A classe PrintWriter também possui esse método.

            public static void main(String args[]) {
                    try {
                            PrintWriter p = new PrintWriter(new FileWriter("teste.txt"));
                            p.println("Linha 1");
                            p.println("Linha 2");
                            p.close();
                    } catch(Exception e) {
                            e.printStackTrace();
                    }
            }
    

  3. Cd os colaboradores?
    Cd o Moderador?
    ninguém ajuda ninguém?

    Calma, rapaz. A sua dúvida ficou sem resposta por um dia. Isso acontece. Significa que ninguém teve tempo de passar e elaborar uma resposta, ou que ninguém sabe como fazer. Mas não é o caso. Se você pesquisar, vai ver que eu postei em outro tópico algo parecidíssimo pro Dracom. Então, que tal pesquisar no fórum antes de abrir um novo tópico?

    E, já que estamos no assunto, sabia que um fórum não é feito pelos moderadores, sim por usuários, como você? Eu era um usuário, há algum tempo, e continuo sendo tão voluntário quanto qualquer outro aqui. Ninguém tem obrigação de responder as perguntas. Nem eu. Mas nós respondemos. Quando dá tempo. E quando nós sabemos a resposta.

    Então, ao invés de iniciar uma rebelião, que tal colocar a mão na massa, e tentar responder as dúvidas dos outros usuários? Não há ninguém tão inteligente que não tenha nada a aprender, nem ninguém tão burro que não tenha nada a ensinar. Jogar todo o trabalho pra cima do moderador não ajuda em nada, como já deu pra perceber. Esse fórum é uma comunidade, e não uma central de suporte técnico.

    Té mais,

    Álinson.

  4. Por exemplo:

    import java.util.*;
    import javax.swing.*;
    
    public class Teste extends JFrame {
        
        public Teste()
        {
            ImageIcon icon = new ImageIcon("/diretorio/figura.png");
            JLabel label = new JLabel(icon);
            add(label);
            pack();
        }
        
        public static void main(String args[]) {
            new Teste().setVisible(true);
        }
    }
    

  5. Essa conversão não é nada trivial, e Java é famoso por ter uma curva de aprendizado bem longa. Eu sugiro que você comece com Java para desktop, e depois evolua para desenvolvimento web. Do contrário, você vai programar em Java como se estivesse no ASP.

    Livros de Java são o que não falta. Recomendo o 'Core Java' se você gostar de coisas sem enrolação, ou o 'Java: Como Programar', se quiser ir com mais calma. Quanto à IDE, recomendo o Eclipse. Tanto para web, quanto para desktop.

    Té mais.

  6. Não uso Netbeans, mas acho difícil ele precisar de conexão à Internet pra isso. :huh:

    Você não consegue usar porque dá algum erro em particular, ou porque não sabe como faz?

    Té mais.

  7. Não sei se entendi bem o problema.

    Fiz aqui um que ordena pela segunda coluna. :)

    #include <stdio.h>
    #define MAX_TAM_LINHA 300
    #define MAX_NUM_LINHAS 20
    #define swap(x,y) x^=(y^=(x^=y))
    
    int main(int argc, char ** argv)
    {
        int i, j, n_linhas = 0;
        char linha_atual[MAX_TAM_LINHA];
        char *linhas[MAX_NUM_LINHAS];
        
        FILE *arquivo = fopen("entrada.txt", "r");
        if(!arquivo) return 1;
    
        // Le as linhas e coloca num vetor
        while(fgets(linha_atual, MAX_TAM_LINHA, arquivo)) {
            linhas[n_linhas] = (char*) malloc(strlen(linha_atual) * sizeof(char));
            strcpy(linhas[n_linhas], linha_atual);
            linhas[n_linhas][strlen(linha_atual) - 1] = '\0';
            n_linhas++;
        }
        
        // Le os numeros da segunda coluna e guarda em outro vetor
        char tmp[200];
        int numeros[n_linhas], original[n_linhas];
        for(i = 0; i < n_linhas; i++) {
            sscanf(linhas[i], "%s %d", tmp, &numeros[i]);
            original[i] = i;
        }
        
        // Ordena de maneira muito ineficiente..
        for(i = 0; i < n_linhas - 1; i++) {
            for(j = i+1; j < n_linhas; j++) {
                if(numeros[i] < numeros[j]) {
                    swap(numeros[i], numeros[j]);
                    swap(original[i], original[j]);
                }
            }
        }
        
        // Exibe as linhas na ordem correta
        for(i = 0; i < n_linhas; i++) {
            printf("%s\n", linhas[original[i]]);
        }    
        
        return 0;
    }
    Só uma observação: C/C++ são péssimas linguagens para se fazer coisas simples como estas. Você precisa cuidar da alocação da memória, dos bytes, dos ponteiros, etc. Algumas linguagens script conseguem fazer o serviço de uma forma bem mais limpa. Veja como seria o mesmo programa em Python:
    n_linhas = 0
    arquivo = open('entrada.txt', 'r')
    
    # Le as linhas e coloca num vetor
    linhas = []
    for linha_atual in arquivo:
        linhas.append(linha_atual)
        n_linhas = n_linhas + 1
    
    # Le os numeros da segunda coluna e guarda em outro vetor
    numeros = []
    for linha_atual in linhas:
        palavras = linha_atual.split("\t")
        numeros.append(int(palavras[1]))
    numeros = zip(numeros, range(0, len(numeros)))
    
    # Ordena de forma eficiente
    numeros.sort()
    numeros.reverse()
    
    # Exibe as linhas na ordem correta
    for n in numeros:
        print linhas[n[1]],
    

    Té mais.

  8. Existem diversos exemplos e tutoriais no wiki do JasperReports:

    http://jasperforge.org/sf/wiki/do/viewPage...s/wiki/HomePage

    No caso, se você já gerou o XML, agora basta compilar o relatório, passar os parâmetros e exibir. Seria algo assim:

    // Carrega o XML e compila o relatorio
    JasperDesign jasperDesign = JasperManager.loadXmlDesign("Relatorio.xml");
    JasperReport jasperReport = JasperManager.compileReport(jasperDesign);
    
    // Cria um mapa, com os parâmetros
    Map parameters = new HashMap();
    parameters.put("Titulo", "Relatorio do JasperReport");
    parameters.put("SalarioMaximo", new Double(20000.00));
    
    // Consegue uma conexao com o banco de dados
    Connection conn = Database.getConnection(); 
    
    // Junta tudo, e cria o relatorio
    JasperPrint jasperPrint = JasperManager.fillReport(jasperReport, 
       parameters, conn);
    
    // Finalmente, escreve em um arquivo PDF
    JasperManager.printReportToPdfFile(jasperPrint, "Relatorio.pdf");

    Té mais.

×
×
  • Criar Novo...