Oppure

Loading
23/03/19 9:58
Andrea477
Salve a tutti, sono nuovo in questo forum, ed avrei bisogno di un aiuto per un programma c++.
Vi informo che utilizzo Visual Studio Enterprise 2017 come IDE. Allora, andiamo al punto, programmo già da un paio d'anni ma non mi sono mai inbattuto nel creare un programma che aprisse dei file, mi spiego meglio io vorrei creare un programma che quando un file viene premuto si apre questo programma che me lo visualizza. Ho lavorato diverse volte con i file usando fstream e i puntatori a file (FILE *nomepuntatore) con le rispettive funzioni. Quindi la mia domanda è c'è un modo che prende il nome del file che si vuole aprire e passarlo al programma. Grazie a tutti in anticipo.
aaa
23/03/19 10:39
Andrea477
Qui sotto vi posto il codice
#include <iostream>
#include <Windows.h> //la utilizzo per la system("pause") visto che in VS il programma al return del main si chiude 
                                   automaticamente
#include <fstream>

using namespace std;

char File[120];
void print(char name[60]);

int main()
{
	char file[60];

	for (int i = 0; i < 60; i++)
		file[i] = ' ';

	//Enter the file name
	strcpy(file, "file.txt"); //è questa la parte che voglio cambiare vorrei che il file.txt lo prenda il programma
	print(file);

	system("PAUSE");
	return 0;
}

void print(char name[60])
{
	FILE *f;
	f = fopen(name, "rb");
	
	if (f != NULL)
	{
		while (!feof(f))
		{
			for (int i = 0; i < 120; i++)
				File[i] = ' ';
			fread(&File, sizeof(File), 1, f);
			cout << File;
			if (!feof)
				break;
		}
		cout << endl;
		fclose(f);
	}
	else
		cout << endl << "File not found" << endl;
	
}
Ultima modifica effettuata da lumo 24/03/19 16:00
aaa
23/03/19 11:01
Utilizza i tag CODE (vedi tasto Code del forum) per il codice altrimenti il codice resta confuso.

Non utilizzare la system con VS. Basta avviare il programma con Ctrl-F5 al posto di F5
Ultima modifica effettuata da 23/03/19 11:02
23/03/19 12:54
Andrea477
ok grazie per l'informazione ora lo tolgo
aaa
23/03/19 13:14
Ok ma posta il codice correttamente ...
23/03/19 18:32
TheDarkJuster
Puoi fare un maniera tale che io nome del file sia il primo argomento passato.
Apri il file con fopen(argv[1],...) Se adotti questa strategia puoi aggiungere una chiave nel registro di sistema di Windows affinché al doppio click su un file con la tua estensione venga eseguito il tuo programma.
aaa