プログラムを書こう!

実務や自作アプリ開発で習得した役に立つソフトウェア技術情報を発信するブログ

C#でパスを結合する。

この記事は2019年08月16日に投稿しました。

f:id:paveway:20190914064630j:plain

目次

  1. はじめに
  2. C#でパスを結合する
  3. おわりに

独習C# 新版

独習C# 新版

1. はじめに

こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。
今回は業務で使用しているC#でパスを結合する方法についてです。

目次へ

2. C#でパスを結合する

C#でパスを結合するには、PathクラスのCombineメソッドを使用します。
結合するパスの数により、以下の4つのパターンのメソッドが用意されています。
結合するパスの終端にパス区切文字"¥"が付加されていない場合、付加されて結合されます。
結合するパスの終端にパス区切文字"¥"が付加されている場合、そのまま結合されます。

書式

public static string Combine (params string[] paths)
public static string Combine (string path1, string path2)
public static string Combine (string path1, string path2, string path3)
public static string Combine (string path1, string path2, string path3, string path4)

引数

paths
パスの構成要素の配列

path1
結合する 1 番目のパス

path2
結合する 2 番目のパス

path3
結合する 3 番目のパス

path4
結合する 4 番目のパス

例外

ArgumentException
配列内の文字列の 1 つが、GetInvalidPathChars() で定義された無効な文字を 1 つ以上含んでいる場合、発生します。

ArgumentNullException
配列内の文字列の 1 つが null の場合、発生します。

戻値

結合されたパス

API Reference
Pathクラス

Combineメソッド

実装例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace CSharpPathCombine
{
    class Program
    {
        static void Main(string[] args)
        {
            // 結合するパスの終端にパス区切り文字が付加されていない場合
            var path1 = "C:\\Windows";
            var path2 = "test.txt";
            var path = Path.Combine(path1, path2);
            Console.WriteLine(path);

            // 結合するパスの終端にパス区切り文字が付加されている場合
            path1 = "C:\\Windows\\";
            path2 = "test.txt";
            path = Path.Combine(path1, path2);
            Console.WriteLine(path);

            // 結合するパスが配列の場合
            var paths = new string[] { path1, path2 };
            path = Path.Combine(paths);
            Console.WriteLine(path);
        }
    }
}

目次へ

3. おわりに

パス名とファイル名を結合する際、使用しました。
パス名の終端のパス区切文字"¥"を気にせず結合できるため、便利です。

作って覚えるVisual C# 2017 デスクトップアプリ入門

作って覚えるVisual C# 2017 デスクトップアプリ入門

紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。

目次へ


私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。

また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。

EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688

目次へ