Help, ethernet and SD, error ÿ

And finally all my library's and variables:

// incluindo as bibliotecas do relogio do teclado e do display
#include <Time.h>// inclui a biblioteca de tempo, para as datas e horas
#include <Keypad.h>// inclui a biblioteca para o teclado de menbrana
#include <PCD8544.h>// inclui a biblioteca do LCD Nokia 5510, será substituida em breve
#include <SD.h>// inclui a biblioteca do cartão SD
#include <SPI.h>// Inclui a biblioteca SPI para o display, o ethernet, e o SD
#include <Ethernet.h>// Inclui a biblioteca Ethernet
#define BUFSIZ 100 // Váriável para leitura dos dados do cartão e para posterios impressão na página via Ethernet

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };// endereço MAC do equipamento (Pode ser alterado)
IPAddress ip(10,200,0,99);// Endereço IP do equiopamento, depende da rede.

byte gateway[] = { 10, 200, 7, 254 };   // Gateway padrão da rede a que a equipamento está conectado, opcional.
byte subnet[]  = { 255, 255, 248, 0 }; // Mascara de subrede.

EthernetServer server(80);// porta de comunicação do servidor, 80 padrão HTML
File myFile;// Definindo o objeto myFile, que será utilizado para operações do SD
File root;// Definindo o objeto root, que é o root do directório SD

const byte ROWS = 4; //quatro linhas do teclado de membrana
const byte COLS = 4; //quatro colunas do teclado de menbrana
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};// Mapeando a matriz do teclado com as teclas que eu quero, podem ser as mesmas do teclado ou podem ser diferentes.
byte rowPins[ROWS] = {29, 28, 27, 26}; //(De 1 a 4), são os pinos das linhas, nos quais o teclado está conectado fisicamente com o Mega
byte colPins[COLS] = {25, 24, 23, 22}; //(De 5 a 8),  são os pinos das colunas, nos quais o teclado está conectado fisicamente com o Mega
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS);//inicializando o tecladocom todas as variáveis definidas anteriormente 
static PCD8544 lcd;// definindo o objeto do lcd
String setor;// Variável que guarda o setor que foi escolhido
int cont_3_teclas = 0;// variável para ir contando e ir pegando os números das datas e hora
int numero_hr_0;// variaveis para armezenar datas e horas no formato 00:00:00 e 00/00/00, porém pegando número a número
int numero_hr_1;
int numero_min_0;
int numero_min_1;
int numero_dia_0;
int numero_dia_1;
int numero_mes_0;
int numero_mes_1;
int numero_ano_0;
int numero_ano_1;
// variáveis para juntar as anteriores e deixar no formato xx.
int hr;
int minuto;
int dia;
int mes;
int ano;
int tracos = 0;// variável para plotar inicialmente , antes de clicar qualquer key.
int regular_relogio = 0;// Variável para saber se é a primeira ligada e ajustar o relógio
char setor_1 = '0';// variável do primeiro numero do codigo do setor
char setor_2 = '0';// variável do segundo numero do codigo do setor
char setor_3 = '0';// variável do terceiro numero do codigo do setor
int cont_setor = 0;// Váriávle de auxpilio para pegar cada um dos três números do código do setor, e auxiliar no menu de setor
int cont_print_uma_vez = 0;// Váviávle de auxílio para imprimir no display
int pegar_codigo = 0;// Variável de auxílio para mudança de menus, e correção de dados errado.
int codigo;// pega os três números dos setor e junta eles em um código, depois compara para saber qual setor corresponde o código
int  hora2;//Armazena a hora pega em um instante.
int minuto2;//
int dia2;//
int mes2;//
int ano2;//
int peso;// Armazena o peso que a balança envia
char pasta_ano[2];//Armazena o Ano em um string de char
char nome_arquivo2[2];//Armazena o Mês em um string de char
char nome_arquivo[10];//Armazena o Nome final do arquivo que é gerado na forma MM_AA.log
int cont_pesagem_tela = 0;
int parar_erro = 0;

i guess that's all, i will also put the entire code attach to here. thanks a lot guys.

ver_arquivos_SD_acessar.ino (24.4 KB)