Exercício JAVA + HTML

Olá amigos.

Este é o meu primeiro post e peço desculpa se não o estiver a colocar no sítio certo.
Estou a aprender java e já fiz os seguintes exercícios em java… Só que não estou a entender (ou não sei fazer LOL) o que me pedem para elaborar em HTML.

Os exercícios são estes (prestem atenção às frases a vermelho sff.):

“1) Dado um subconjunto de 3 R averigúe se é subespaço de 3 R . Considere somente vectores
cujos coeficientes das variáveis de cada coordenada sejam valores inteiros. A leitura dos
dados de entrada do subespaço V deverá ser feita através da consola e deverão ser lidas,
sequencialmente, as três coordenadas desse vector. [color=red]Os cálculos auxiliares deverão ser
exportados para um ficheiro de texto em formato HTML.”[/color]

“2) Determine uma base e a dimensão de um subespaço de 4 R . A leitura dos dados de entrada
deverá ser feita quer através da consola, quer através da leitura de um ficheiro de texto
em formato CSV, construído previamente com uma folha de cálculo (Excel, Calc, etc.). [color=red]A
resolução do sistema deverá ser apresentada passo-a-passo num ficheiro de texto em
formato HTML.”[/color]

“3) Determine se um dado conjunto de vectores são ou não geradores de 3 R . A leitura dos
dados de entrada deverá ser feita quer através da consola, quer através da leitura de um
ficheiro de texto em formato CSV, construído previamente com uma folha de cálculo
(Excel, Calc, etc.). [color=red]A resolução do sistema deverá ser apresentada passo-a-passo num
ficheiro de texto em formato HTML.”[/color]

Já li uns tutoriais de introdução ao html aqui no fórum que foram muito úteis para eu ficar com umas luzes sobre essa linguagem.

Aguardo e agradeço a vossa ajuda.

Com os melhores cumprimentos
noorders

Você sabe como fazer I/O de arquivos? E você conhece (ao menos) o básico de HTML?

Não sei fazer I/O de arquivos mas conheço o básico de HTML.

Cumprimentos

Sugestão:

  1. Faça a montagem do seu HTML usando um StringBuilder (usado para criar Strings). Por exemplo:
// ao invés de fazer isso, monte seu código HTML
StringBuilder sb = new StringBuilder(1050);
for (int i = 1; i <= 500; i++) {
    sb.append(i).append('\t');
    if (i % 10 == 0) {
        sb.append('\n');
    }
}

Uma vez que tem todo o HTML no seu StringBuilder, passe ele para uma String usando o método toString():

String html = sb.toString();

E use um PrintWriter para fazer a escrita no arquivo:

try {
    PrintWriter pw = new PrintWriter("nomeDoArquivo.html");
    pw.println(html);
} catch (Exception e) {
    e.printStackTrace();
} finally {
    if (pw != null) {
        pw.close();
    }
}

Obrigado marcobiscaro2112

Vou apresentar a sua ajuda aos meus restantes colegas de grupo e depois posto aqui o resultado :wink:

Cumprimentos
noorders

Olá.

Já consegui fazer o que queria no primeiro exercício.
Tive de criar uma subclasse na mesma “package” que depois é chamada pelo método principal.

O único problema é que depois quando aparece a página no meu browser as palavras que contêm acentos do tipo “~” ou “ç” aparecem com uns símbolos estranhos nesse lugar.

Como posso corrigir isso?

Cumprimentos
noorders

Isso é problema de encoding. O Java trabalha, por padrão com o encoding UTF-8. Se você estiver usando um sistema operacional da família MS (que usa por padrão o encoding Windows-1252) isso pode acontecer mesmo.

A solução é adicionar um argumento ao construtor do PrintWriter informando o encoding que quer usar:

PrintWriter pw = new PrintWriter("nomeDoArquivo.html", "ISO-8859-1"); // esse encoding coincide em partes com o do Windows