I`m Obtenir une extraction d'ArgumentException à partir du code suivant: J'ai trouvé ce code sur le débordement de la pile.
Lien:
C #: Copier la feuille de calcul protégée vers un autre fichier Excel
Je ne sais pas exactement ce que c'est. S'il vous plaît dites-moi ce que c'est. Ce code que je bâtis dans un exe. P> Enfin, j'ai besoin de copier une feuille de calcul dans un autre fichier. P> Qu'est-ce que je vais? Je déploiement cela dans le serveur. P> p>
4 Réponses :
Qu'est-ce que ce code semble faire, est-ce que votre répertoire de travail (partout où le Je pense que vous avez peut-être voulu avoir voulu quelque chose comme p> suppose donc que vous exécutez votre application de p> ce que ce code ferait est défini la première chose J'ai vu était p> Donc, vous voulez échapper à votre ou en créer une chaîne littérale en mettant un EXE code> associé à votre code est), et le combine avec "C: \\ Somename.xls" code> (qui n'a pas de sens.) filepath code> sur p>
\ code> est un caractère spécial, pour déterminer d'autres caractères. Par exemple '\ n' code> est une nouvelle ligne. '\\' code> est la barre oblique backslash. p> \ code> avec un autre \ code> p> @ code> devant celui-ci. p>
p>
Votre code doit être:
string filePath = "C:\\somename.xls"
deux problèmes avec le code,
\ code> est un caractère spécial, pour déterminer autres personnages. Par exemple '\ n' code> est une nouvelle ligne. '\\' code> est la barre oblique backslash. p> FilePath code> contient un chemin racine , c: \\ code>. chemin.combine code> retournera simplement filepath code> alors, il ne peut pas être combiné. p> p>
Votre problème principal est dans StartPath code> paramètre. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
C # Spécifications littéraux strings . Au fait, pourquoi initiez-vous le filepath à deux fois?
Vous attribuez une chaîne littérale à
FilePath code>, puis écrasez-la avec le résultat depath.combine code>. Où obtenez-vousStrpath code>?En outre, où sur le débordement de la pile avez-vous obtenu ce code? Pourriez-vous aimer la question / la réponse? Cela pourrait nous aider à comprendre un peu mieux le contexte.
Désolé pour une grosse erreur. Édité mon poteau à nouveau. Veuillez vérifier s'il vous plait.
@ user2144293 En outre, essayez d'éviter la copie libre de votre code. Si vous faites une erreur de faire cela, vous aurez des commentaires incorrects. Essayez d'utiliser la copie / la pâte
@Samiam: Merci pour la réponse. "Startpath" Wil sera le chemin de l'exe comme vous l'avez dit, et "StrPath" que je passe aura un chemin comme "C: \ Nouveau dossier \ AA \ bb \ cc \ Somename.exe". Est-ce faux?
@ user2144293 Que voulez-vous
FilePath code> être?@Samiam: Je pensais que c'est une façon de recevoir un nouveau fichier Excel. wat vous suggérez-vous pour cela? Feuille de calcul de copie globale au nouveau fichier. Je veux ce " Stackoverflow.com / Questions / 15293451 / ... "
@ user2144293 Je ne suis pas un expert sur les fichiers Excel, mais je sais que tout
system.io.path.combine (); code> fait vraiment, est une manipulation de chaîne. Je présume que c'est un chemin où vous voulez que le fichier Excel soit créé à. Où est-ce?@Samiam: j'ai ce que je voulais. Il est juste nécessaire d'être "Strpath". Le repos n'est pas nécessaire pour moi.