Vous êtes sur la page 1sur 21

import java.io.

BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

// ...

public class MainActivity extends AppCompatActivity {

// ...

private void lireFichierCSV() {


String adresseIP = "192.168.1.100"; // Remplacez par l'adresse IP de votre Raspberry Pi
String urlCSV = "http://" + adresseIP + "/votre_fichier.csv"; // Remplacez par le chemin du fichier
CSV sur le serveur

try {
URL url = new URL(urlCSV);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");

BufferedReader reader = new BufferedReader(new


InputStreamReader(conn.getInputStream()));
String line;
StringBuilder contenuCSV = new StringBuilder();

while ((line = reader.readLine()) != null) {


contenuCSV.append(line);
contenuCSV.append("\n");
}

// À ce stade, "contenuCSV" contient le contenu du fichier CSV. Vous pouvez le traiter comme
vous le souhaitez.

reader.close();
conn.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}

// ...

}
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {


private ListView listView;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = findViewById(R.id.listView);

// Exécutez la tâche asynchrone pour récupérer le fichier CSV.


new DownloadCsvTask().execute();
}

private class DownloadCsvTask extends AsyncTask<Void, Void, List<String>> {


@Override
protected List<String> doInBackground(Void... voids) {
List<String> csvData = new ArrayList<>();

try {
// Remplacez "YOUR_RASPBERRY_PI_IP" par l'adresse IP de votre Raspberry Pi et le chemin
du fichier CSV.
URL url = new URL("http://YOUR_RASPBERRY_PI_IP/path/to/your/file.csv");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();

BufferedReader reader = new BufferedReader(new


InputStreamReader(connection.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
csvData.add(line);
}

reader.close();
connection.disconnect();
} catch (IOException e) {
e.printStackTrace();
}

return csvData;
}

@Override
protected void onPostExecute(List<String> csvData) {
// Affichez les données CSV dans la ListView.
ArrayAdapter<String> adapter = new ArrayAdapter<>(MainActivity.this,
android.R.layout.simple_list_item_1, csvData);
listView.setAdapter(adapter);
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ArrayAdapter;
import android.widget.ListView;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {


private ListView listView;
private ArrayAdapter<String> adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = findViewById(R.id.listView);
adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1);
listView.setAdapter(adapter);

String raspberryPiIP = "Adresse_IP_de_votre_Raspberry_Pi";


String csvURL = "http://" + raspberryPiIP + "/votre_fichier.csv";

new DownloadCSVTask().execute(csvURL);
}

private class DownloadCSVTask extends AsyncTask<String, Void, List<String>> {


@Override
protected List<String> doInBackground(String... urls) {
List<String> csvData = new ArrayList<>();

try {
URL url = new URL(urls[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
InputStream inputStream = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));

String line;
while ((line = reader.readLine()) != null) {
csvData.add(line);
}

reader.close();
inputStream.close();
connection.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
return csvData;
}

@Override
protected void onPostExecute(List<String> csvData) {
adapter.clear();
adapter.addAll(csvData);
}
}
}
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;

public class MainActivity extends Activity {

private ListView listView;


private ArrayAdapter<String> adapter;
private ArrayList<String> csvData;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = findViewById(R.id.listView);
csvData = new ArrayList<>();
adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, csvData);
listView.setAdapter(adapter);

// Remplacez "IP_RASPBERRY_PI" par l'adresse IP de votre Raspberry Pi et "FICHIER_CSV" par le


chemin du fichier CSV sur votre Raspberry Pi
String raspberryPiIP = "IP_RASPBERRY_PI";
String csvFilePath = "FICHIER_CSV";

new DownloadCSVTask().execute("http://" + raspberryPiIP + "/" + csvFilePath);


}

private class DownloadCSVTask extends AsyncTask<String, Void, Void> {


@Override
protected Void doInBackground(String... urls) {
String urlStr = urls[0];
try {
URL url = new URL(urlStr);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.connect();

InputStream inputStream = connection.getInputStream();


InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String line;
while ((line = bufferedReader.readLine()) != null) {
csvData.add(line);
}
bufferedReader.close();
inputStreamReader.close();
inputStream.close();
connection.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}

@Override
protected void onPostExecute(Void result) {
adapter.notifyDataSetChanged();
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {


private ListView listView;
private ArrayAdapter<String> adapter;
private ArrayList<String> csvData;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = findViewById(R.id.listView);
csvData = new ArrayList<>();
adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, csvData);
listView.setAdapter(adapter);

// Remplacez "raspberry_ip" et "port" par les valeurs appropriées


String raspberryIp = "192.168.1.100";
int port = 8080;
String url = "http://" + raspberryIp + ":" + port + "/votre_chemin_vers_le_fichier_csv.csv";

new DownloadCsvTask().execute(url);
}

private class DownloadCsvTask extends AsyncTask<String, Void, Void> {


@Override
protected Void doInBackground(String... params) {
String urlString = params[0];

try {
URL url = new URL(urlString);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.connect();

BufferedReader br = new BufferedReader(new


InputStreamReader(connection.getInputStream()));
String line;
while ((line = br.readLine()) != null) {
csvData.add(line);
}
br.close();

} catch (IOException e) {
e.printStackTrace();
}

return null;
}

@Override
protected void onPostExecute(Void result) {
adapter.notifyDataSetChanged();
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {


private ListView listView;
private ArrayAdapter<String> adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = findViewById(R.id.listView);
adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1);
listView.setAdapter(adapter);

// Remplacez "IP_DE_LA_RASPBERRY_PI" et "PORT" par l'adresse IP et le port de votre Raspberry


Pi
String raspberryPiUrl = "http://IP_DE_LA_RASPBERRY_PI:PORT/fichier.csv";
new DownloadDataTask().execute(raspberryPiUrl);
}

private class DownloadDataTask extends AsyncTask<String, Void, List<String>> {


@Override
protected List<String> doInBackground(String... urls) {
List<String> lines = new ArrayList<>();
try {
URL url = new URL(urls[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
BufferedReader reader = new BufferedReader(new
InputStreamReader(connection.getInputStream()));

String line;
while ((line = reader.readLine()) != null) {
lines.add(line);
}

reader.close();
connection.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
return lines;
}

@Override
protected void onPostExecute(List<String> lines) {
adapter.clear();
adapter.addAll(lines);
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import androidx.appcompat.app.AppCompatActivity;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {

private ListView listView;


private ArrayAdapter<String> adapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

listView = findViewById(R.id.listView);
adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, new ArrayList<>());
listView.setAdapter(adapter);

// Remplacez "adresse_ip" et "port" par les informations de votre Raspberry Pi.


String raspberryPiUrl = "http://adresse_ip:port/chemin_vers_votre_fichier.csv";
new DownloadCsvTask().execute(raspberryPiUrl);
}

private class DownloadCsvTask extends AsyncTask<String, Void, String> {

@Override
protected String doInBackground(String... urls) {
try {
URL url = new URL(urls[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
BufferedReader reader = new BufferedReader(new
InputStreamReader(connection.getInputStream()));
StringBuilder csvData = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
csvData.append(line);
}
reader.close();
return csvData.toString();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}

@Override
protected void onPostExecute(String csvData) {
if (csvData != null) {
// Parsez les données CSV et ajoutez-les à votre liste.
String[] csvRows = csvData.split("\n");
adapter.addAll(csvRows);
}
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {

private EditText editTextIP, editTextPort;


private Button btnConnect;
private ListView listViewCSV;
private ArrayList<String> csvDataList;
private ArrayAdapter<String> csvAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

editTextIP = findViewById(R.id.editTextIP);
editTextPort = findViewById(R.id.editTextPort);
btnConnect = findViewById(R.id.btnConnect);
listViewCSV = findViewById(R.id.listViewCSV);

csvDataList = new ArrayList<>();


csvAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, csvDataList);
listViewCSV.setAdapter(csvAdapter);

btnConnect.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String ipAddress = editTextIP.getText().toString();
int port = Integer.parseInt(editTextPort.getText().toString());

// Établir la connexion à la Raspberry Pi en tant que tâche asynchrone


new ConnectToRaspberryPiTask().execute(ipAddress, port);
}
});
}

private class ConnectToRaspberryPiTask extends AsyncTask<String, Void, Void> {

@Override
protected Void doInBackground(String... params) {
String ipAddress = params[0];
int port = Integer.parseInt(params[1]);

try {
Socket socket = new Socket(ipAddress, port);
// Lire le fichier CSV à partir du socket
BufferedReader reader = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
String line;
csvDataList.clear(); // Efface les données précédentes
while ((line = reader.readLine()) != null) {
csvDataList.add(line);
}

// Mettre à jour l'interface utilisateur avec les données CSV


runOnUiThread(new Runnable() {
@Override
public void run() {
csvAdapter.notifyDataSetChanged();
}
});

// Fermer le socket et le lecteur


socket.close();
reader.close();
} catch (IOException e) {
e.printStackTrace();
}

return null;
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {

private Button btnConnect;


private ListView listView;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

btnConnect = findViewById(R.id.btnConnect);
listView = findViewById(R.id.listView);

btnConnect.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Adresse IP et port de la Raspberry Pi
String raspberryIp = "192.168.1.100"; // Remplacez par l'adresse IP de votre Raspberry Pi
int port = 8080; // Port utilisé par votre serveur sur la Raspberry Pi

// URL du fichier CSV sur la Raspberry Pi


String csvUrl = "http://" + raspberryIp + ":" + port + "/votre_fichier.csv"; // Remplacez par le
chemin de votre fichier CSV

// Exécute la tâche asynchrone pour télécharger le fichier CSV


new DownloadCsvTask().execute(csvUrl);
}
});
}

// Tâche asynchrone pour télécharger le fichier CSV


private class DownloadCsvTask extends AsyncTask<String, Void, List<String>> {
@Override
protected List<String> doInBackground(String... urls) {
List<String> csvData = new ArrayList<>();
try {
URL url = new URL(urls[0]);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
BufferedReader reader = new BufferedReader(new
InputStreamReader(connection.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
csvData.add(line);
}
reader.close();
connection.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
return csvData;
}

@Override
protected void onPostExecute(List<String> csvData) {
// Affiche les données CSV dans la ListView
ArrayAdapter<String> adapter = new ArrayAdapter<>(MainActivity.this,
android.R.layout.simple_list_item_1, csvData);
listView.setAdapter(adapter);
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {


private EditText ipEditText;
private EditText portEditText;
private Button connectButton;
private ListView dataListView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ipEditText = findViewById(R.id.ipEditText);
portEditText = findViewById(R.id.portEditText);
connectButton = findViewById(R.id.connectButton);
dataListView = findViewById(R.id.dataListView);

connectButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String ipAddress = ipEditText.getText().toString();
int port = Integer.parseInt(portEditText.getText().toString());

// Execute a background task to connect and retrieve CSV data


new ConnectTask().execute(ipAddress, String.valueOf(port));
}
});
}

private class ConnectTask extends AsyncTask<String, Void, List<String>> {


@Override
protected List<String> doInBackground(String... params) {
String ipAddress = params[0];
int port = Integer.parseInt(params[1]);
List<String> csvData = new ArrayList<>();

try {
Socket socket = new Socket(ipAddress, port);
BufferedReader reader = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
csvData.add(line);
}

socket.close();
} catch (IOException e) {
e.printStackTrace();
}

return csvData;
}

@Override
protected void onPostExecute(List<String> csvData) {
super.onPostExecute(csvData);

// Afficher les données CSV dans la ListView


ArrayAdapter<String> adapter = new ArrayAdapter<>(MainActivity.this,
android.R.layout.simple_list_item_1, csvData);
dataListView.setAdapter(adapter);
}
}
}
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {


private EditText ipEditText;
private EditText portEditText;
private Button connectButton;
private ListView dataListView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ipEditText = findViewById(R.id.ipEditText);
portEditText = findViewById(R.id.portEditText);
connectButton = findViewById(R.id.connectButton);
dataListView = findViewById(R.id.dataListView);

connectButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String ipAddress = ipEditText.getText().toString();
int port = Integer.parseInt(portEditText.getText().toString());

// Execute a background task to connect and retrieve CSV data


new ConnectTask().execute(ipAddress, String.valueOf(port));
}
});
}

private class ConnectTask extends AsyncTask<String, Void, List<String>> {


@Override
protected List<String> doInBackground(String... params) {
String ipAddress = params[0];
int port = Integer.parseInt(params[1]);
List<String> csvData = new ArrayList<>();

try {
Socket socket = new Socket(ipAddress, port);
BufferedReader reader = new BufferedReader(new
InputStreamReader(socket.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
csvData.add(line);
}

socket.close();
} catch (IOException e) {
e.printStackTrace();
}

return csvData;
}

@Override
protected void onPostExecute(List<String> csvData) {
super.onPostExecute(csvData);

// Afficher les données CSV dans la ListView


ArrayAdapter<String> adapter = new ArrayAdapter<>(MainActivity.this,
android.R.layout.simple_list_item_1, csvData);
dataListView.setAdapter(adapter);
}
}
}

Vous aimerez peut-être aussi