D'accord, ce peut-être le plus simple (ou stupide) question, mais je dois savoir ...Insertion de texte dans un fichier texte
Supposons que je dispose d'un fichier texte contenant aucun compte. et l'équilibre. J'écris un programme pour rechercher le fichier en utilisant le numéro de compte entré. et mettez à jour le champ de solde dans le même fichier texte avec une nouvelle balance. Je trouve cela étonnamment difficile de le faire en utilisant des flux de fichiers. Le problème est que j'essaie d'écraser la chaîne balance dans le fichier texte avec une nouvelle chaîne balance. Donc, si la balance est de 1000 (4 chiffres), je peux l'écraser avec une autre chaîne de 4 chiffres. Mais, si la nouvelle chaîne d'équilibre est plus de 4 chiffres, elle écrase les données après le champ d'équilibre (c'est un simple fichier texte attention à vous ...). Par exemple, si le fichier texte contient
Acc. No. balance
123456 100
123567 2500
Les champs sont séparés par le caractère TAB \ « t » et enregistrement suivant est séparé par un saut de ligne « \ n ». Si j'entre nouveau dépôt de 200000 pour le compte 123456, la fonction fwrite() écrase les données dans le fichier texte ...
Acc. No Balance
123456 2001003567 2500
Vous pouvez remarquer que le « \ n » après le champ de l'équilibre, et 2 chiffres des prochains comptes 'acc. non. est écrasé.
Bien sûr, personne ne veut que ça arrive :) Ce que je besoin est un moyen de insérer texte dans ce fichier, pas seulement écrasera il. Il y a beaucoup de résultats en utilisant Java, python ou même SED, mais rien en utilisant les flux FILE. S'il vous plaît partagez vos pensées ... merci.
Mais ne perdra-t-il pas la date de modification/création de fichier d'origine? Je veux dire, ce n'est pas un problème pour moi, mais les systèmes de bases de données doivent avoir besoin de cette information de date, n'est-ce pas? – aditya
Un système de base de données en soi n'a pas besoin d'une telle information de date. C'est à vous de concevoir votre base de données en conséquence. Par exemple. vous pouvez inclure une colonne dans votre table contenant l'horodatage de la dernière modification. – vanje
Comme conseillé par _Vanje_, j'ai créé un fichier temporaire, je l'ai édité, puis j'ai supprimé l'original. Je n'ai pas aimé, mais ça a marché :). Mais oui, je pense que l'approche de la base de données est définitivement plus efficace. Mais encore hoe _database_ fait en premier lieu ..., ils doivent aussi utiliser les fichiers. Quoi qu'il en soit ... thnks les gars – aditya